From 0eda7e9762f4a86b2f083bbc54b45ad5cd6820b2 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 14 Jun 2019 01:22:46 -0400 Subject: [PATCH] added input masks --- add_asset_modal.php | 46 +- add_client_modal.php | 2 +- add_location_modal.php | 2 +- add_login_modal.php | 2 +- add_network_modal.php | 6 +- add_trip_copy_modal.php | 11 +- add_vendor_modal.php | 4 +- client_assets.php | 4 + edit_asset_modal.php | 37 + edit_client_modal.php | 4 +- edit_location_modal.php | 2 +- edit_network_modal.php | 6 +- edit_vendor_modal.php | 4 +- footer.php | 2 + header.php | 1 + post.php | 8 +- trips.php | 10 +- vendor/Inputmask/.eslintrc | 48 + vendor/Inputmask/.gitattributes | 39 + .../.github/ISSUE_TEMPLATE/bug_report.md | 35 + .../.github/ISSUE_TEMPLATE/feature_request.md | 17 + vendor/Inputmask/.gitignore | 14 + vendor/Inputmask/CHANGELOG.md | 646 +++++ vendor/Inputmask/Gruntfile.js | 99 + vendor/Inputmask/LICENSE.txt | 7 + vendor/Inputmask/README.md | 1244 ++++++++ vendor/Inputmask/README_android.md | 62 + vendor/Inputmask/README_date.md | 93 + vendor/Inputmask/README_numeric.md | 99 + vendor/Inputmask/README_other.md | 43 + vendor/Inputmask/bower.json | 27 + vendor/Inputmask/bundle.jquery.js | 8 + vendor/Inputmask/bundle.js | 6 + vendor/Inputmask/composer.json | 12 + vendor/Inputmask/css/inputmask.css | 69 + .../dist/bindings/inputmask.binding.js | 26 + vendor/Inputmask/dist/inputmask.js | 2468 ++++++++++++++++ vendor/Inputmask/dist/inputmask.min.js | 8 + vendor/Inputmask/dist/jquery.inputmask.js | 2407 ++++++++++++++++ vendor/Inputmask/dist/jquery.inputmask.min.js | 8 + vendor/Inputmask/index.html | 34 + vendor/Inputmask/index.js | 1 + .../lib/bindings/inputmask.binding.js | 26 + .../inputmask.dependencyLib.jqlite.js | 170 ++ .../inputmask.dependencyLib.jquery.js | 8 + .../dependencyLibs/inputmask.dependencyLib.js | 372 +++ .../extensions/inputmask.date.extensions.js | 323 +++ .../lib/extensions/inputmask.extensions.js | 92 + .../inputmask.numeric.extensions.js | 454 +++ vendor/Inputmask/lib/global/window.js | 7 + vendor/Inputmask/lib/inputmask.js | 374 +++ vendor/Inputmask/lib/jquery.inputmask.js | 79 + vendor/Inputmask/lib/maskScope.js | 2527 +++++++++++++++++ vendor/Inputmask/lib/maskset.js | 471 +++ vendor/Inputmask/nuspecs/Inputmask.nuspec | 20 + vendor/Inputmask/nuspecs/Readme.txt | 12 + .../Inputmask/nuspecs/jquery.inputmask.nuspec | 20 + vendor/Inputmask/package.json | 69 + vendor/Inputmask/qunit/index.js | 71 + vendor/Inputmask/qunit/prototypeExtensions.js | 13 + vendor/Inputmask/qunit/qunit.html | 14 + vendor/Inputmask/qunit/simulator.js | 222 ++ vendor/Inputmask/qunit/tests_alternations.js | 414 +++ vendor/Inputmask/qunit/tests_attributes.js | 24 + vendor/Inputmask/qunit/tests_base.js | 543 ++++ vendor/Inputmask/qunit/tests_date.js | 610 ++++ vendor/Inputmask/qunit/tests_dynamic.js | 448 +++ vendor/Inputmask/qunit/tests_escape.js | 105 + .../Inputmask/qunit/tests_formatvalidate.js | 228 ++ vendor/Inputmask/qunit/tests_initialvalue.js | 186 ++ .../Inputmask/qunit/tests_inputeventonly.js | 125 + vendor/Inputmask/qunit/tests_ip.js | 96 + vendor/Inputmask/qunit/tests_jitmasking.js | 14 + .../Inputmask/qunit/tests_jquery_inputmask.js | 17 + vendor/Inputmask/qunit/tests_keepStatic.js | 368 +++ vendor/Inputmask/qunit/tests_multi.js | 442 +++ vendor/Inputmask/qunit/tests_numeric.js | 2047 +++++++++++++ vendor/Inputmask/qunit/tests_numericinput.js | 401 +++ vendor/Inputmask/qunit/tests_option.js | 15 + vendor/Inputmask/qunit/tests_optional.js | 314 ++ vendor/Inputmask/qunit/tests_paste.js | 230 ++ vendor/Inputmask/qunit/tests_regex.js | 363 +++ vendor/Inputmask/qunit/tests_setvalue.js | 149 + vendor/Inputmask/webpack.buildconfig.js | 8 + vendor/Inputmask/webpack.config.js | 157 + vendor/Inputmask/webpack.jqueryconfig.js | 17 + 86 files changed, 20308 insertions(+), 28 deletions(-) create mode 100644 vendor/Inputmask/.eslintrc create mode 100644 vendor/Inputmask/.gitattributes create mode 100644 vendor/Inputmask/.github/ISSUE_TEMPLATE/bug_report.md create mode 100644 vendor/Inputmask/.github/ISSUE_TEMPLATE/feature_request.md create mode 100644 vendor/Inputmask/.gitignore create mode 100644 vendor/Inputmask/CHANGELOG.md create mode 100644 vendor/Inputmask/Gruntfile.js create mode 100644 vendor/Inputmask/LICENSE.txt create mode 100644 vendor/Inputmask/README.md create mode 100644 vendor/Inputmask/README_android.md create mode 100644 vendor/Inputmask/README_date.md create mode 100644 vendor/Inputmask/README_numeric.md create mode 100644 vendor/Inputmask/README_other.md create mode 100644 vendor/Inputmask/bower.json create mode 100644 vendor/Inputmask/bundle.jquery.js create mode 100644 vendor/Inputmask/bundle.js create mode 100644 vendor/Inputmask/composer.json create mode 100644 vendor/Inputmask/css/inputmask.css create mode 100644 vendor/Inputmask/dist/bindings/inputmask.binding.js create mode 100644 vendor/Inputmask/dist/inputmask.js create mode 100644 vendor/Inputmask/dist/inputmask.min.js create mode 100644 vendor/Inputmask/dist/jquery.inputmask.js create mode 100644 vendor/Inputmask/dist/jquery.inputmask.min.js create mode 100644 vendor/Inputmask/index.html create mode 100644 vendor/Inputmask/index.js create mode 100644 vendor/Inputmask/lib/bindings/inputmask.binding.js create mode 100644 vendor/Inputmask/lib/dependencyLibs/inputmask.dependencyLib.jqlite.js create mode 100644 vendor/Inputmask/lib/dependencyLibs/inputmask.dependencyLib.jquery.js create mode 100644 vendor/Inputmask/lib/dependencyLibs/inputmask.dependencyLib.js create mode 100644 vendor/Inputmask/lib/extensions/inputmask.date.extensions.js create mode 100644 vendor/Inputmask/lib/extensions/inputmask.extensions.js create mode 100755 vendor/Inputmask/lib/extensions/inputmask.numeric.extensions.js create mode 100644 vendor/Inputmask/lib/global/window.js create mode 100644 vendor/Inputmask/lib/inputmask.js create mode 100644 vendor/Inputmask/lib/jquery.inputmask.js create mode 100644 vendor/Inputmask/lib/maskScope.js create mode 100644 vendor/Inputmask/lib/maskset.js create mode 100644 vendor/Inputmask/nuspecs/Inputmask.nuspec create mode 100644 vendor/Inputmask/nuspecs/Readme.txt create mode 100644 vendor/Inputmask/nuspecs/jquery.inputmask.nuspec create mode 100644 vendor/Inputmask/package.json create mode 100644 vendor/Inputmask/qunit/index.js create mode 100644 vendor/Inputmask/qunit/prototypeExtensions.js create mode 100644 vendor/Inputmask/qunit/qunit.html create mode 100644 vendor/Inputmask/qunit/simulator.js create mode 100644 vendor/Inputmask/qunit/tests_alternations.js create mode 100644 vendor/Inputmask/qunit/tests_attributes.js create mode 100644 vendor/Inputmask/qunit/tests_base.js create mode 100644 vendor/Inputmask/qunit/tests_date.js create mode 100644 vendor/Inputmask/qunit/tests_dynamic.js create mode 100644 vendor/Inputmask/qunit/tests_escape.js create mode 100644 vendor/Inputmask/qunit/tests_formatvalidate.js create mode 100644 vendor/Inputmask/qunit/tests_initialvalue.js create mode 100644 vendor/Inputmask/qunit/tests_inputeventonly.js create mode 100644 vendor/Inputmask/qunit/tests_ip.js create mode 100644 vendor/Inputmask/qunit/tests_jitmasking.js create mode 100644 vendor/Inputmask/qunit/tests_jquery_inputmask.js create mode 100644 vendor/Inputmask/qunit/tests_keepStatic.js create mode 100644 vendor/Inputmask/qunit/tests_multi.js create mode 100644 vendor/Inputmask/qunit/tests_numeric.js create mode 100644 vendor/Inputmask/qunit/tests_numericinput.js create mode 100644 vendor/Inputmask/qunit/tests_option.js create mode 100644 vendor/Inputmask/qunit/tests_optional.js create mode 100644 vendor/Inputmask/qunit/tests_paste.js create mode 100644 vendor/Inputmask/qunit/tests_regex.js create mode 100644 vendor/Inputmask/qunit/tests_setvalue.js create mode 100644 vendor/Inputmask/webpack.buildconfig.js create mode 100644 vendor/Inputmask/webpack.config.js create mode 100644 vendor/Inputmask/webpack.jqueryconfig.js diff --git a/add_asset_modal.php b/add_asset_modal.php index 65b84fc7..50d777ec 100644 --- a/add_asset_modal.php +++ b/add_asset_modal.php @@ -30,7 +30,7 @@
- +
@@ -40,7 +40,7 @@
- +
@@ -55,7 +55,7 @@
- +
@@ -65,7 +65,7 @@
- +
@@ -75,7 +75,7 @@
- +
@@ -134,6 +134,42 @@
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+
diff --git a/add_client_modal.php b/add_client_modal.php index 683f9c98..8d519e8f 100644 --- a/add_client_modal.php +++ b/add_client_modal.php @@ -101,7 +101,7 @@
- +
diff --git a/add_location_modal.php b/add_location_modal.php index d86d2ca0..6da6a89e 100644 --- a/add_location_modal.php +++ b/add_location_modal.php @@ -60,7 +60,7 @@
- +
diff --git a/add_login_modal.php b/add_login_modal.php index 5f947cf5..6fc62c93 100644 --- a/add_login_modal.php +++ b/add_login_modal.php @@ -25,7 +25,7 @@
- +
diff --git a/add_network_modal.php b/add_network_modal.php index 0570397d..86533ab2 100644 --- a/add_network_modal.php +++ b/add_network_modal.php @@ -26,7 +26,7 @@
- +
@@ -36,7 +36,7 @@
- +
@@ -46,7 +46,7 @@
- + diff --git a/add_trip_copy_modal.php b/add_trip_copy_modal.php index 4903ec38..83483536 100644 --- a/add_trip_copy_modal.php +++ b/add_trip_copy_modal.php @@ -10,9 +10,9 @@
- + @@ -128,7 +128,7 @@
- + diff --git a/client_assets.php b/client_assets.php index 4d1fdc21..6275a932 100644 --- a/client_assets.php +++ b/client_assets.php @@ -13,6 +13,7 @@ Type Name + IP Make Model Serial @@ -29,11 +30,13 @@ $asset_make = $row['asset_make']; $asset_model = $row['asset_model']; $asset_serial = $row['asset_serial']; + $asset_ip = $row['asset_ip']; $asset_purchase_date = $row['asset_purchase_date']; $asset_warranty_expire = $row['asset_warranty_expire']; $vendor_id = $row['vendor_id']; $location_id = $row['location_id']; $contact_id = $row['contact_id']; + $network_id = $row['network_id']; if($asset_type == 'Laptop'){ $device_icon = "laptop"; @@ -116,6 +119,7 @@ ?> + diff --git a/edit_asset_modal.php b/edit_asset_modal.php index ee77adc7..398911a1 100644 --- a/edit_asset_modal.php +++ b/edit_asset_modal.php @@ -140,6 +140,43 @@ + +
+ +
+
+ +
+ +
+
+ +
+ +
+
+ +
+ +
+
+
diff --git a/edit_client_modal.php b/edit_client_modal.php index ac6fbbe3..e4540904 100644 --- a/edit_client_modal.php +++ b/edit_client_modal.php @@ -106,7 +106,7 @@
- +
@@ -120,7 +120,7 @@
- + diff --git a/edit_location_modal.php b/edit_location_modal.php index 66ceaaa3..58dee4f3 100644 --- a/edit_location_modal.php +++ b/edit_location_modal.php @@ -57,7 +57,7 @@
- +
diff --git a/edit_network_modal.php b/edit_network_modal.php index 5bd97169..5bcc203b 100644 --- a/edit_network_modal.php +++ b/edit_network_modal.php @@ -26,7 +26,7 @@
- +
@@ -36,7 +36,7 @@
- + @@ -46,7 +46,7 @@
- + diff --git a/edit_vendor_modal.php b/edit_vendor_modal.php index c60efe92..67d112ca 100644 --- a/edit_vendor_modal.php +++ b/edit_vendor_modal.php @@ -104,7 +104,7 @@
- + @@ -128,7 +128,7 @@
- + diff --git a/footer.php b/footer.php index 61f0fe29..43cff6a8 100644 --- a/footer.php +++ b/footer.php @@ -35,6 +35,8 @@ + + diff --git a/header.php b/header.php index 228d7084..db2cb8af 100644 --- a/header.php +++ b/header.php @@ -42,6 +42,7 @@ + diff --git a/post.php b/post.php index 771a3560..f79a2623 100644 --- a/post.php +++ b/post.php @@ -2253,14 +2253,16 @@ if(isset($_POST['add_asset'])){ $make = strip_tags(mysqli_real_escape_string($mysqli,$_POST['make'])); $model = strip_tags(mysqli_real_escape_string($mysqli,$_POST['model'])); $serial = strip_tags(mysqli_real_escape_string($mysqli,$_POST['serial'])); + $ip = strip_tags(mysqli_real_escape_string($mysqli,$_POST['ip'])); $location = intval($_POST['location']); $vendor = intval($_POST['vendor']); $contact = intval($_POST['contact']); + $network = intval($_POST['network']); $purchase_date = strip_tags(mysqli_real_escape_string($mysqli,$_POST['purchase_date'])); $warranty_expire = strip_tags(mysqli_real_escape_string($mysqli,$_POST['warranty_expire'])); $note = strip_tags(mysqli_real_escape_string($mysqli,$_POST['note'])); - mysqli_query($mysqli,"INSERT INTO assets SET asset_name = '$name', asset_type = '$type', asset_make = '$make', asset_model = '$model', asset_serial = '$serial', location_id = $location, vendor_id = $vendor, contact_id = $contact, asset_purchase_date = '$purchase_date', asset_warranty_expire = '$warranty_expire', asset_note = '$note', asset_created_at = NOW(), client_id = $client_id"); + mysqli_query($mysqli,"INSERT INTO assets SET asset_name = '$name', asset_type = '$type', asset_make = '$make', asset_model = '$model', asset_serial = '$serial', asset_ip = '$ip', location_id = $location, vendor_id = $vendor, contact_id = $contact, asset_purchase_date = '$purchase_date', asset_warranty_expire = '$warranty_expire', asset_note = '$note', asset_created_at = NOW(), network_id = $network, client_id = $client_id"); if(!empty($_POST['username'])) { $asset_id = mysqli_insert_id($mysqli); @@ -2287,9 +2289,11 @@ if(isset($_POST['edit_asset'])){ $make = strip_tags(mysqli_real_escape_string($mysqli,$_POST['make'])); $model = strip_tags(mysqli_real_escape_string($mysqli,$_POST['model'])); $serial = strip_tags(mysqli_real_escape_string($mysqli,$_POST['serial'])); + $ip = strip_tags(mysqli_real_escape_string($mysqli,$_POST['ip'])); $location = intval($_POST['location']); $vendor = intval($_POST['vendor']); $contact = intval($_POST['contact']); + $network = intval($_POST['network']); $purchase_date = strip_tags(mysqli_real_escape_string($mysqli,$_POST['purchase_date'])); $warranty_expire = strip_tags(mysqli_real_escape_string($mysqli,$_POST['warranty_expire'])); $note = strip_tags(mysqli_real_escape_string($mysqli,$_POST['note'])); @@ -2297,7 +2301,7 @@ if(isset($_POST['edit_asset'])){ $password = strip_tags(mysqli_real_escape_string($mysqli,$_POST['password'])); $description = "$type - $name"; - mysqli_query($mysqli,"UPDATE assets SET asset_name = '$name', asset_type = '$type', asset_make = '$make', asset_model = '$model', asset_serial = '$serial', location_id = $location, vendor_id = $vendor, contact_id = $contact, asset_purchase_date = '$purchase_date', asset_warranty_expire = '$warranty_expire', asset_note = '$note', asset_updated_at = NOW() WHERE asset_id = $asset_id"); + mysqli_query($mysqli,"UPDATE assets SET asset_name = '$name', asset_type = '$type', asset_make = '$make', asset_model = '$model', asset_serial = '$serial', asset_ip = '$ip', location_id = $location, vendor_id = $vendor, contact_id = $contact, asset_purchase_date = '$purchase_date', asset_warranty_expire = '$warranty_expire', asset_note = '$note', asset_updated_at = NOW(), network_id = $network WHERE asset_id = $asset_id"); //If login exists then update the login if($login_id > 0){ diff --git a/trips.php b/trips.php index c7bde3ef..c8e36202 100644 --- a/trips.php +++ b/trips.php @@ -54,8 +54,14 @@ Delete - - + + + diff --git a/vendor/Inputmask/.eslintrc b/vendor/Inputmask/.eslintrc new file mode 100644 index 00000000..7b288a21 --- /dev/null +++ b/vendor/Inputmask/.eslintrc @@ -0,0 +1,48 @@ +{ + "env": { + "browser": true, + "commonjs": true, + "node": true + }, + "extends": "eslint:recommended", + "parserOptions": { + "ecmaVersion": 5 + }, + "rules": { + "indent": [ + "error", + "tab", + { + "SwitchCase": 1 + } + ], + "linebreak-style": [ + "off" + ], + "quotes": [ + "error", + "double" + ], + "semi": [ + "error", + "always" + ], + "no-unused-vars": [ + "error", + { + "vars": "all", + "args": "none" + } + ], + "no-cond-assign": [ + "error", + "except-parens" + ] + }, + "globals": { + "Inputmask": true, + "jQuery": false, + "define": false, + "require": false + } +} \ No newline at end of file diff --git a/vendor/Inputmask/.gitattributes b/vendor/Inputmask/.gitattributes new file mode 100644 index 00000000..65d5756c --- /dev/null +++ b/vendor/Inputmask/.gitattributes @@ -0,0 +1,39 @@ +# These settings are for any web project + +# Handle line endings automatically for files detected as text +# and leave all files detected as binary untouched. +* text=auto + +# +# The above will handle all files NOT found below +# + +# These files are text and should be normalized (Convert crlf => lf) +*.php text +*.css text +*.js text +*.htm text +*.html text +*.xml text +*.txt text +*.ini text +*.inc text +.htaccess text + +# These files are binary and should be left untouched +# (binary is a macro for -text -diff) +*.png binary +*.jpg binary +*.jpeg binary +*.gif binary +*.ico binary +*.mov binary +*.mp4 binary +*.mp3 binary +*.flv binary +*.fla binary +*.swf binary +*.gz binary +*.zip binary +*.7z binary +*.ttf binary diff --git a/vendor/Inputmask/.github/ISSUE_TEMPLATE/bug_report.md b/vendor/Inputmask/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 00000000..e4b2552b --- /dev/null +++ b/vendor/Inputmask/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,35 @@ +--- +name: Bug report +about: Create a report to help us improve + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +**To Reproduce** +Steps to reproduce the behavior: +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Live example** +Add a link to a codepen, jsfiddle or other example page which shows the problem + +**Desktop (please complete the following information):** + - OS: [e.g. iOS] + - Browser [e.g. chrome, safari] + - Version [e.g. 22] + +**Smartphone (please complete the following information):** + - Device: [e.g. iPhone6] + - OS: [e.g. iOS8.1] + - Browser [e.g. stock browser, safari] + - Version [e.g. 22] + +**Additional context** +Add any other context about the problem here. diff --git a/vendor/Inputmask/.github/ISSUE_TEMPLATE/feature_request.md b/vendor/Inputmask/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 00000000..066b2d92 --- /dev/null +++ b/vendor/Inputmask/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,17 @@ +--- +name: Feature request +about: Suggest an idea for this project + +--- + +**Is your feature request related to a problem? Please describe.** +A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** +Add any other context or screenshots about the feature request here. diff --git a/vendor/Inputmask/.gitignore b/vendor/Inputmask/.gitignore new file mode 100644 index 00000000..020bba2d --- /dev/null +++ b/vendor/Inputmask/.gitignore @@ -0,0 +1,14 @@ +build/ +test.html +jquery-1.10.2.js +dist/jQuery.InputMask.*.nupkg +node_modules/ +bower_components/ +npm-debug.log +.idea/ +*.iml +qunit/qunit.js +qunit/qunit.js.map +package-lock.json +**/*.map +dist/*.LICENSE \ No newline at end of file diff --git a/vendor/Inputmask/CHANGELOG.md b/vendor/Inputmask/CHANGELOG.md new file mode 100644 index 00000000..dd1bc825 --- /dev/null +++ b/vendor/Inputmask/CHANGELOG.md @@ -0,0 +1,646 @@ +# Change Log + +## [5.0.0 - UNRELEASED] +### Addition +- add indian numbering support in numeric alias (indianns alias) + +### Updates +- fix mask curruption when alternating and using jitmasking +- Casing option will also allow case insensitive entry for static symbols +- refactor numeric alias (ongoing - 8) +- package & bundling +- enhance regex alternations. ex: [01][0-9]|2[0-3] => ([01][0-9]|2[0-3]) +- extend command object + - rewritePosition + +### Fixed +- im-insert not valid html #2122 +- No message with HTML5 validation #841 +- Manual input via virtual keyboard doesn't work #2116 +- Can't insert more than 2 letters in Firefox #2114 +- InputMask not getting fresh placeholder value #2111 +- Chrome autofill does not work with Inputmask #1330 +- Paste in inputmask #2088 +- The first character is truncated when masking. #2089 +- No leading zero for single-digit hours KO #2061 +- Only 1st placeholder is displayed for fields with same alias numeric #2060 +- Original placeholder disappear when mouseout in IE #2047 +- Document bug with disabled inputs caused by Firefox 64 and older #2045 +- Behaviour of v3 with hours not possible anymore #1918 +- Unmasked value of datetime alias, if empty, returns the placeholder #2039 + +## [4.0.4 - 2018-12-03] +### Addition +- add url as supported input type + +### Updates +- rework jit enabled quantifiers + +### Fixed +- restore greedy functionality +- fix focus and mouseenter behavior in IE + +## [4.0.3 - 2018-11-07] + +### Addition +- numeric.extensions - add inputType option to specify the type of initial value +- README_numeric.md => Setting initial values + +### Updates +- fix window.js for node + +### Fixed +- digits: 3 - error on transform #2022 +- "Can not read property 'join' of undefined" when using Inputmask.format #2019 +- Inputmask numeric does no round up when digits is 0 #2018 +- Strange Calendar popup issue in IE Only when used with Daterangepicker #1965 +- incorrect work min max date - #2011, #2013 + +## [4.0.2 - 2018-09-14] + +(4.0.1 => 4.0.2 rebuild dist with newer version of uglify #2000) + +### Updates +- remove phone alias (~ use https://github.com/RobinHerbots/inputmask.phone or https://github.com/andr-04/inputmask-multi instead) #1981 +- enhance gettests for jit enabled quantifiers +- pass initial validation position to postvalidation, to allow prefills in the datetime alias +- remove caret selection for insertMode => use inputmask.css for visualization +- update nuget package +- update dependencies + +### Fixed +- When blur input, inputmask adds attr placeholder to input - #1992 +- Fix endless loop for quantifiers (see tests_dynamic.js - latest unittests) #1983 +- Element keeps the focus to itself in ie11 #1846 +- Changes for min/max options do not get picked up. #1931 +- Behaviour of v3 with hours not possible anymore #1918 +- Multiple alternators #1553 +- jquery.inputmask: clearIncomplete and placeholder don't appear to do anything when array of masks used #1892 +- Problem with delete masked date on iOS #1899 +- Autofill corrupts input on email mask #1908(gl) + +## [4.0.0 - 2018-05-26] +### Addition +- add support for beforeInput event with inputType (Input Events Level 2 - https://w3c.github.io/input-events/) +- extend positionCaretOnClick with "ignore" to ignore the click in the input +- jit enabled dynamic masks +- add support for input type search +- new datetime alias +- extend positionCaretOnClick with "select" to select the whole input on focus +- add regex option (replaces the Regex alias) +- CSS Unit Mask #1843 + +### Updates +- make behavior of [] an {0,1} consistent +- change default value from greedy option to false +- fix unmatched alternations in gettests. ("[0-9]{2}|[0-9]{3}" like masks) +- code cleanup and refactoring + - enhance determineTestTemplate + - oncomplete calls + - merge setValidPosition and stripValidPositions => revalidateMask + - remove canClearPosition hook + - change notation of optionalmarker, quantifiermarker, groupmarker + - drop prevalidator and cardinality support in definitions + - drop Regex alias + - drop all date/time related aliases => replaced by new datetime alias +- improve alternation logic +- improve inputfallback (Android) +- better caret handling in colormask +- disable autocorrect on safari when disablePredictiveText is used +- rename androidHack option to disablePredictiveText. Make it available for other platforms. + +### Fixed +- Both date and time in same masked textbox #1888 +- time input mask min and max #1674 +- Bug: Using backspace when caret is not at the end messes up static placeholders #1525 +- Fast typing text #1872 +- jitMasking + disablePredictiveText causes android browser tab to stuck when clicked on "backspase" #1862 +- Android 6 issue - Samsung device keyboard #1818 +- Method oncomplete doesn't work correctly with jitMasking #1845 +- isComplete in numeric extensions doesn't take into account negationSymbol #1844 +- Email alias - retype @ removes last . #1324 +- When "clearIncomplete: true" and pressing Enter to Submit Form #1839 +- Hang on combination of optional mask and repeat #698 +- Can't remove inputmask on focus? #1820 +- Not able to input 31.12. in DD.MM date input in v4.x #1803 +- problem with two separate alternations #1722 +- colorMask + Remask = Duplicate im-colormask element #1709 + +### Note +Be aware when upgrading from 3.3.11, that the regex alias is removed +and that the datetime alias has totally changed. +So expect you need todo some changes to your date-masks and regex masks. +Also some defaults has changed, so have a read through the changes for this release. + +There are still many open issues but postponing the release to resolve all issues will take like another year, +while there are already many enhancements available. + + +## [3.3.9 - 2017-10-10] +### Updates +- enhance inputfallback (Android) + +### Fixes +- On Android with date mask input mashing up #1708 +- Currency mask works incorrectly on Android Chrome v58 #1617 +- Can't input character at the end if it's also a placeholder on Android #1648 + +## [3.3.8 - 2017-08-24] +### Addition +- Addition \uFF11-\uFF19 character range to 9 definition #1606 +- importDataAttributes option #1633 +- add dot support in regex #1651 + +### Updates +- pass inputmask object in the callbacks +- colorMask enhancement: better positioning and more controllable via inputmask.css +- remove maxLength attribute on android #1490 +- enhance inputfallback (Android) + +### Fixes +- Mask appear when I press TAB & showMaskOnFocus: false, showMaskOnHover: false #1198 +- DependencyLib.Event CustomEvent #1642 +- Wrong initial cursor position with Numeric and Prefix #1578 +- Currency mask works incorrectly on Android Chrome v58 #1617 +- Can't input character at the end if it's also a placeholder on Android #1648 +- colorMask - incorrect positioning #1421 +- Object doesn't support property or method '_valueGet' in version 3.3.7 #1645 +- Usage of numericInput in data-inputmask causes reversed value #1640 +- Numeric suffix makes radixPoint disappear on preset value #1638 +- Cannot delete after fill up all the mask Android Chrome browser Jsfiddle #1637 + +## [3.3.7 - 2017-06-09] +### Addition +- allow custom operation in casing option by callback #1565 + +### Updates +- put back Regex alias extension for legacy support #1611 +- postvalidation cannot set pos of undefined +- fix undoValue initialization + +### Fixed +- Major issue with regex #1611 +- React onChange event doesn't work with Inputmask #1377 +- Currency digits and delete #1351 +- Decimal editing problems #1603 +- UX problem with email mask #1600 +- Force numeric to empty (on blur) with '0' as value #215 +- ndxInitializer.shift is not a function + +## [3.3.6 - 2017-05-11] +### Addition +- noValuePatching option #1276 + +### Updates +- drop Regex alias => use the inputmask regex option instead +- alternator syntax update - regex like alternations is now supported (aa|99|AA) ~ aa or 99 or AA + +### Fixed +- NaN with negationSymbol and unmaskAsNumber #1581 +- A dot (.) in Regex Causes Errors #647 +- variable "undoValue" isn't initialized correctly #1519 +- on submit change event is triggered #1392 +- Change Event Problems for Masked Input #1583 +- integer backspace bug when set maxLength attr. #1546 +- Regex with placeholder, not working? #798 +- Visualize regular expressions #1040 +- Mobile phone code update needed for Malaysia #1571 +- suffix bug (regression) #1558 +- 29 february of non leap-year #1567 + +## [3.3.5 - 2017-04-10] +### Addition +- add example webpack setup (thx to Kevin Suen) +- build-in regex support without extension (WIP) + +### Updates +- Change package name to Inputmask to better reflect that Inputmask doesn't require jQuery +- make removing the inputmask take the autoUnmask option into account +- enhance inputfallback event (android) +- restructure project +- performance updates + - initialization + +### Fixed +- Changes are not reflected back to model when using with Vue2 (mobile) #1468 +- Multiple alternators #1553 +- Weird Issue with decimal masking when value is like 0.55 #1512 +- IE 8 problems with currency and jquery.inputmask.bundle.js #1545 +- Rounding error for numeric aliases #1300 +- Currency InputMask Input Value issue with numericInput: true #1269 +- onCleared event doesn't fire with 'numeric' alias in some case #1495 +- Currency InputMask Input Value issue with numericInput: true #1269 +- Rounding numeric values #1540 +- Casing lower/upper as extend aliases? #1529 +- This line of code returns an unexpected value when unmasking as number #1527 +- Phone Mask Cursor Issue on Chrome on some Androids.. #1490 +- min value issue fix #1177 +- static is a reserved keyword #1479 +- hasOwnProperty check missing in reverseTokens (numericInput) #1486 +- Per-element radixPoint overwrites defaults #1454 +- Form not cleaning correctly when AutoUnmask option is set to true #1442 +- Form can`t submitted with input[name=disabled] #1473 + +## [3.3.4 - 2016-12-22] +### Addition +- extra extension points: analyseMask +- colorMask option ~ css styleable mask + +### Updates +- remove tooltip option +- remove h,s,d,m,y definitions => use the date/time aliases +- phone-alias - fine-tune mask sorting +- make data-inputmask attribute naming configurable (dataAttribute on Inputmask) +- numeric alias move negation symbols to the edges +- handle android predictive text enabled +- rename js/inputmask.dependencyLib.jquery.js to js/inputmask.dependencyLib.js +- rename dist/inputmask.dependencyLib.jquery.js to dist/inputmask.dependencyLib.js +- commonjs dep to inputmask.dependencyLib instead to inputmask.dependencyLib.jquery => can be symlinked to another dependencyLib +- improve inputfallback (Android support) + +### Fixed +- IE11 : SCRIPT438: Object doesn't support property or method 'isFinite' #1472 +- () as literal followed by an optional, doubles the optional template #1453 +- Decimal mask excluding zero with custom RadixPoint and GroupSeparator #1418 +- Can't remove dot from the middle of a word #1439 +- Invalid Leap Year dates can be entered #1368 +- jquery.val returns empty value (when using an unsupported input type) #1415 +- Losing the decimal part when the maximum number of digits is reached #1257 +- Not allowing to change existing number to 0 #1381 +- Numbers get swapped when cursor near suffix. #1278 +- androidHack: Caret positioning needs some fine tuning #1412 +- How can I get "-$123.45", not "$-123.45"? #1360 +- Placeholder color #972 +- Other color on placeholder (wrap placeholder in span, using contenteditable?) #873 +- Error on 3.3.3: Uncaught TypeError: Cannot set property 'generatedInput' of undefined #1399 +- ios 8, safari, on first visit unable to enter any characters #826 +- Numerica mask not run in Galaxy S5 + Chrome + Android #1357 + +## [3.3.3 - 2016-09-09] - hotfix + +### Updates +- revert moving jquery dependencyLib +- correct caret positioning - radixFocus & placeholder: "" + +### Fixed +- Build failure in heroku after release of 3.3.2 #1384 +- Error with inputMask any case (v3.3.2) #1383 + + +## [3.3.2 - 2016-09-09] + +### Addition +- mask-level casing => #1352 +- 'casing': 'title' #1277 +- add quantifier syntax for digits option in numeric alias. #1374 + +### Updates +- add bundle in nuget package +- change default of positionCaretOnTab to true +- include min files in nuspecs +- better filter for input targets in inputmask.binder.js +- improve alternation selection +- removed nojumps option +- update phone alias implementation + - add unit tests for phonecodes +- replaced radixFocus option by positionCaretOnClick. Allows choice for behavior of the caret on click. (none, lvp (default), radixFocus) +- performance updates + - getmasklength + - use selective caching in getTests + +### Fixed +- Problems with greedy dynamic masks in current version 3.x #1375 +- Croatian phone mask only supports city of Zagreb #1359 +- Pasting to masked input not working on Android #1061 +- Unable to get property 'forwardPosition' of undefined or null reference IE11 #1342 +- Input event doesn't fire in IE #1287 +- Dynamically changing mask based on number of entered characters #1336 +- change addEventListener not fired in IE11 #1310 - inputmask.dependencyLib.js +- Hide mask's items that have multiple options #678 +- Bug when typing after a fixed character #1299 +- onUnMask is not being called #1291 +- How Can I have caret position on decimal digit(after decimal point) for currency inputmask ? #1282 +- How to implement mask for these numbers? #840 (alternator) +- 'setvalue' on mask with a suffix results in suffix being doubled, while `$.fn.val` works fine #1267 + +## [3.3.1] - 2016-04-20 + +### Updates +- better handle alternator logic by merging the locators +- patchValueProperty - enable native value property patch on IE8/IE9 +- speedup insert and delete from characters +- adding extra options through option method => auto apply the mask + add noremask option + +### Fixed +- Safari date mask - Context switch when jquery.valhook fallback is used #1255 +- Email alias _@_ => _@_._ #1245 +- Safari Error: RangeError: Maximum call stack size exceeded #1241 +- Safari Maximum call stack size exceeded when inputmask bound twice #1226 + +## [3.3.0] - 2016-04-05 + +### Addition +- nullable option => switch to return the placeholder or null when nothing is entered +- VIN mask #1199 + +### Updates +- also escape []{}() in the prefix and suffix for decimals +- Can not change integer part when it is "0" #1192 +- change funtionality of postValidation => result may be true|false +- improve getmetadata +- patchValueProperty - enable native value property patch on IE10/IE11 + +### Fixed +- PostValidation function fails when using placeholder and digitsOptional is false #1240 +- min value issue #1177 +- min value for decimal isn't working #1178 +- InputMask remove a 0 in left side. (numericInput: true) #1238 +- validate regular expression for indian vehicle registration number #1223 +- Distinguish empty value and '$ 0.00' value for currency alias #1053 +- 'alias': 'numeric', zero value #1221 +- Clicking on a highlighted masked field does not set the caret to the first valid position (Chrome) #1218 +- Caret Positioned After Last Decimal Digit Disallows Sign Input When digits Option Set #1139 +- numeric alias produces "0.00" instead of null when cleared out. #902 +- IE8 error: Object doesn't support this property or method #1217 +- update negation handling for numeric alias +- NumericInput option can't handle 100.00 #1162 +- "0.00" not displayed if "clearMaskOnLostFocus: true" #1171 +- Lost zero while replacing a digit in group #1202 +- RadixFocus problem #686 +- Can not change integer part when it is "0" #1192 +- "[object Object]" value after `$element.inputmask('setvalue', '')` call #1208 +- Paste does not work properly when using numericInput #1195 +- error occurs in safari 9.0.3 (11601.4.4) #1191 +- Can not clear value when select all and press BACKSPACE in some circumstance #1179 +- Email mask incorrectly including underscore #868 => allowed as not typed => result invalid +- AutoUnmask not working on IE11 #1187 +- Email mask not accepting valid emails #971 +- Deleting character from input with 'email' alias shifts all data #1052 +- Fix some events like paste & cut for Vanilla dependencyLib #1072 + +## [3.2.7] - 2016-01-28 +### Updates +- favor inputfallback for android +- enable IEMobile + +### Fixed +- Firefox, Android - cursor jumps to the left in numeric mask #1138 +- Issue in Android (Samsung GALAXY S5) #825 +- time mask, backspace behavior on android chrome #817 +- Android Chrome Browser #867 +- Mask issue in Android with Swype Keyboard #692 +- Pasting to masked input not working on Android #1061 +- Decimal point/comma not working on Android 4.4 #1041 +- Doesn't work on Android #1073 +- numeric input in mobile #897 +- Support for Android default browser #368 +- Repeating a character and a number On Mobile #898 +- Inputs are ignored on FF 39 on Android 5.0.2 #982 +- Phone input mask duplicates each character on Samsung Android tablet #834 +- Support for Android default browser #368 +- fixed "valids is not defined" error #1166 + +## [3.2.6] - 2016-01-25 +### Addition +- add jitMasking option +- supportsInputType option +- staticDefinitionSymbol (see readme) +- include textarea as a valid masking element + +### Updates +- enhance inputfallback ~ merge mobileinputevent +- caching with cache-dependency check in the getTests fn +- implement missing parts in the jqlite DependencyLib +- Remove namespaces for events (simplifies implementing other dependencyLibs, besides jquery) +- update alternation logic + +### Fixed +- Windows Phone User unable to set Date #993 +- '405 not allowed' error on loading phone-codes.js on certain Ajax configuration. #1156 +- Issue with reset of inputmask field #1157 +- IE11 clear not working in emulated IE9 mode #1144 +- Show placeholder as user types #1141 +- Initial value like VAA gets truncated to V-__ with mask like "I{1,3}-ZZ" #1134 +- Input mask can't be applied on other HTML5 input types #828 +- IE9 SCRIPT445: Object does not support this action #1135 +- Multiple Mask Click Focus Error #1133 +- Double enter for submit #1131 +- Multiple masks #760 +- Cursor shifted to the RIGHT align any way. #1088 +- No-strict mask #1084 +- Inputmask not work with textarea #1128 + +## [3.2.5] - 2015-11-27 + +### Updates +- improve cursor positioning and placeholder handling +- remove $("selector").inputmask("mask", { mask: "99-999 ..." }) format from plugin + +### Fixed +- Currency validator gives false negative if number of digits in integer part is not multiplier of groupSize #1122 +- data-inputmask => mask with optionals not parsed correctly #1119 +- Email mask doesn't allow to go to the domain part by mouse #885 +- alias options from 'data-inputmask' is not used anymore #1113 +- Numeric extensions don't supported with vanilla DependencyLib #1116 + +## [3.2.4] - 2015-11-20 + +### Updates +- allow passing an element id to the mask function +- allow passing a selector to the mask function +- fix for bower package + +### Fixed +- get the pressed key onKeyValidation #1114 +- write a global function for onKeyValidation #1111 => update readme +- NumericInput Causes err #856 +- Certain phones not inputable #758 +- I have a problems with mask input, I can't input Ukraine phone +380(XX)XXX-XX-XX #1050 +- you can't write ukraine number to phone field +380999999999 #1019 +- autoUnmask not work in newest release #1109 +- Definition {_} throws an exception #1106 => update readme +- Uncaught TypeError for "percentage" alias #1108 +- Wrong behavior for symbol delete in ip alias #1092 +- fix element validation for the vanilla dependencyLib #1104 + +## [3.2.3] - 2015-11-09 + +### Addition +- Inputmask.remove +- inputmask.binding => automated inputmask binding for html attributes +- Add tooltip option + +### Updates +- fix bug in maskscache - context mixing +- allow passing multiple inputs to mask function +- Improve handling of compositionevents +- improve extendAliases, extendDefinitions, extendDefaults + +### Fixed +- Cannot erase input value throw mask symbols (Android 4.4, Android 4.2) #1090 +- CTRL-x / Cut issue #948 +- Double "Change" action when pressing Enter in Firefox #1070 +- upper/lower case handling in data-inputmask-* #1079 +- IE8 Null values after submit #1076 +- Each character repeats on Mobile #912 +- extra tooltip property #1071 +- Numeric aliases insert '0' in input after clearing if there was fraction part #1067 +- Clear optional tail in getvalue. See #1055 #1065 + +## [3.2.2] - 2015-10-07 + +### Fixed +- Missing comma in bower.json and component.json #1064 + +## [3.2.1] - 2015-10-07 + +### Addition +- inputmask.dependencyLib.jquery +- inputmask.dependencyLib.jqlite + +### Updates +- namespace dependencyLib => inputmask.dependencyLib +- fix jquery.inputmask.bundle.js +- fix dependency paths for browserify +- update files to be included for package.json, bower.json, component.json + +### Fixed +- oncomplete not called when set with option function #1033 +- oncompleate set value incorrect action #1039 +- JQuery dependency #517 +- IsValid on Optional Mask returning false #1055 +- Focus loop on IE9 with numeric.extensions #989 +- Currency with autogroup and no digits not working #1062 +- field input width characters cropped while writing #1060 (regression fix) +- DependencyLib error in Internet Explorer #1047 +- Dynamically switching mask in same input box not functioning as expected #1016 +- 3.2.0 Error extendDefinitions and extendAliases not functions #1024 +- Browserify error: `Error: Cannot find module 'inputmask' from '/Users/.../node_modules/jquery.inputmask/dist/inputmask` #1030 +- Invalid JSON phone-uk.js #1025 + +## [3.2.0] - 2015-09-04 + +### Addition +- add option command to set and retrieve options on an inputmask +- dependencyLib wrapper around needed jQuery functionality +- mac address alias #986 +- tabThrough option - Tab and autoselect mask parts #433 +- eslint testing in grunt validate task +- $.fn.inputmask("setvalue", value) +- jquery.clone support (also see $.fn.inputmask("setvalue", value)) +- hexadecimal definition (# in inputmask.extensions.js) +- positionCaretOnTab option +- Inputmask.unmask +- numeric alias - increment/decrement by ctrl-up/ctrl-down +- numeric alias - round values +- percentage alias +- Inputmask class +- setting defaults / definitions / aliases + - Inputmask.extendDefaults + - Inputmask.extendDefinitions + - Inputmask.extendAliases + +### Updates +- enhance caret positioning behavior & radicFocus +- change alfanumeric uppercase definition from # to & +- numericInput option also possible on dynamic-masks +- remove $.inputmask in favor of Inputmask class +- remove "jquery." in the naming of the extensions to better reflect their denpendency +- separate jquery plugin code from the inputmask core (first step to remove jquery dependency from the inputmask core) +- Update placeholder handling + +### Fixed +- Mask cleared on ajax submit or jquery unobtrusive validation error #1020 +- Update readme for numerics #994 +- extra zeros in currency alias #1008 +- masks parsing generate a Maximum call stack size exceeded #1007 +- Issue using datamask-input attributes and event handlers #992 +- Set specific inputmask option on already initialized control #949 +- Money question #644 +- Decimal numbers with fixed decimal part #990 +- Focus loop on IE9 with numeric.extensions #989 +- Numeric inputs with default value are setted to blank when submit the form #983 +- Default Enter key function getting lost on an input mask text field #938 +- Add JSHint and JSCS #879 => used eslint instead +- On google chrome, cannot use jquery to clone the inputmask control with data and events #713 +- Cannot overwrite characters when highlighting the characters to the right of the decimal #974 +- Decimal mask accepts "123,456." (RadixPoint with no number after it) #973 +- Make numericInput work with complex masks #963 +- Auto position cursor at end of data on focus #965 +- Decimal separator conversion #919 +- Entering a period on a blank 'numeric' alias input not allowed #888 +- Typing 1000 becomes 1.00 using groupSeparator="." #959 +- phone-codes.js is missing when installing with bower #937 +- Repeat function doesn't work for dynamic masks #960 +- Provide convenient method to unmask value #929 +- Min value doesn't work with allowMinus #951 +- Escape value is inconsistent after mask #935 +- Escape optional marker, quantifiable marker, alternator marker and backslash not working #930 +- Is numeric carret position broken? #928 +- Decimal looses digits #924 +- Firefox: cursor jumps to the right when clicking anywhere on the value #921 +- Numeric inputMask doesn't rounds value #754 +- Chinese / Japanese characters are unable to mask #198 +- Infinite Loop on IE (v11) when using Japanese IME Keyboard #749 +- Delete key not working properly #799 +- Selecting and overwriting text will delete the character to the immediate right #914 +- Can't delete digits after decimal point on negative numbers #892 +- decimal : extra number after delete and typing new numbers #904 +- Dynamic masks with {*} and zero repeats #875 +- Mask does not alternate back after deleting digit #905 +- never trigger 'input' event when paste after invoke inputmask #776 +- Script looping start when add '.' between decimal values #870 ('.' part) + +## [3.1.63] - 2015-05-04 +### Addition +- Support for CommonJS (Browserify) + +### Updates +- Allow masking the text content of other html-elements (other then div) +- Make alternators correctly handle alternations with different lengths +- better determine the last required position with multiple masks + +### Fixed +- Script looping start when add '.' between decimal values #870 (script loop) +- Static masks fails when we set value="2015" for an input field where data-inputmask was "2999" #903 +- contenteditable decimal #882 +- Tab out does not work when element is readonly #884 +- Change mask default for allowPlus and allowMinus #896 +- Browser hangs after trying to type some additional digits at the start of a date field #876 +- inputmask decimal with integerDigits or digits with maxlength can cause Browser freezed #889 +- masking a password field #821 (reenable type=password) +- email inputmask "isComplete" always returns true #855 +- When two masks specified backspace clears the whole input instead of last char #780 +- Phone extention backspace problem #454 + +## [3.1.62] - 2015-03-26 +### Addition +- Numeric alias: add unmaskAsNumber option +- import russian phone codes from inputmask-multi +- enable masking the text content in a div +- enable contenteditable elements for inputmask +- Update Command object to handle inserts and allow for multiple removes +- Add a change log +- Add Component package manager support - component.json + +### Fixed +- updating a value on onincomplete event doesn't work #955 +- $.inputmask.isValid("1A", { mask : "1A" }) returns false #858 +- IE8 doesn't support window.getSelection js error #853 +- Email with dot - paste not working #847 +- Standard phone numbers in Brazil #836 (Part 1) +- Sequentional optional parts do not fully match #699 +- How i fix that number problem? #835 +- Form reset doesn't get same value as initial mask #842 +- Numeric extension doesn't seem to support min/max values #830 +- Numeric max filter #837 +- Mask cache - 2 definitions for same mask #831 +- Adding parentheses as a negative format for Decimal and Integer aliases (100) #451 +- Should not allow "-" or "+" as numbers #815 +- isComplete erroneously returning false when backspacing with an optional mask #824 + +## [3.1.61] - 2015-02-05 + +Initial start of a changelog + +See commits for previous history. diff --git a/vendor/Inputmask/Gruntfile.js b/vendor/Inputmask/Gruntfile.js new file mode 100644 index 00000000..a9209e44 --- /dev/null +++ b/vendor/Inputmask/Gruntfile.js @@ -0,0 +1,99 @@ +var webpackBuildConfig = require("./webpack.buildconfig"); +var webpackJqueryConfig = require("./webpack.jqueryconfig"); + +module.exports = function (grunt) { +// Project configuration. + grunt.initConfig({ + pkg: grunt.file.readJSON("package.json"), + clean: ["dist"], + bump: { + options: { + files: ["package.json", "bower.json", "composer.json"], + updateConfigs: ["pkg"], + commit: false, + createTag: false, + push: false, + prereleaseName: "beta" + } + }, + release: { + options: { + bump: false, + commit: false, + add: false + } + }, + nugetpack: { + dist: { + src: function () { + return "nuspecs/Inputmask.nuspec"; + }(), + dest: "build/", + options: { + version: "<%= pkg.version %>" + } + }, + dist2: { + src: function () { + return "nuspecs/jquery.inputmask.nuspec"; + }(), + dest: "build/", + options: { + version: "<%= pkg.version %>" + } + } + }, + nugetpush: { + dist: { + src: "build/InputMask.<%= pkg.version %>.nupkg", + options: { + source: "https://www.nuget.org" + } + }, + dist2: { + src: "build/jquery.inputMask.<%= pkg.version %>.nupkg", + options: { + source: "https://www.nuget.org" + } + } + }, + eslint: { + target: "lib/*.js" + }, + availabletasks: { + tasks: { + options: { + filter: "exclude", + tasks: ["availabletasks", "default", "updateDistConfig"], + showTasks: ["user"] + } + } + }, + webpack: { + main: webpackBuildConfig, + jquery: webpackJqueryConfig + }, + copy: { + extensions: { + files: [ + {src: "lib/bindings/inputmask.binding.js", dest: "dist/bindings/inputmask.binding.js"} + ] + } + } + }); + + // Load the plugin that provides the tasks. + require("load-grunt-tasks")(grunt); + + grunt.registerTask("publish", ["release", "nugetpack", "nugetpush"]); + grunt.registerTask("publishnext", function () { + grunt.config("release.options.npmtag", "next"); + grunt.task.run("release"); + }); + grunt.registerTask("validate", ["webpack", "copy", "eslint"]); + grunt.registerTask("build", ["bump:prerelease", "clean", "webpack", "copy"]); + grunt.registerTask("build:patch", ["bump:patch", "clean", "webpack", "copy"]); + grunt.registerTask("build:minor", ["bump:minor", "clean", "webpack", "copy"]); + grunt.registerTask("build:major", ["bump:major", "clean", "webpack", "copy"]); + grunt.registerTask("default", ["availabletasks"]); +}; diff --git a/vendor/Inputmask/LICENSE.txt b/vendor/Inputmask/LICENSE.txt new file mode 100644 index 00000000..caaa216a --- /dev/null +++ b/vendor/Inputmask/LICENSE.txt @@ -0,0 +1,7 @@ +Copyright (c) 2010 - 2018 Robin Herbots + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/vendor/Inputmask/README.md b/vendor/Inputmask/README.md new file mode 100644 index 00000000..8068a180 --- /dev/null +++ b/vendor/Inputmask/README.md @@ -0,0 +1,1244 @@ +# Inputmask + +Copyright (c) 2010 - 2019 Robin Herbots Licensed under the MIT license ([http://opensource.org/licenses/mit-license.php](http://opensource.org/licenses/mit-license.php)) + +[![donate](https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=ZNR3EB6JTMMSS) + +[![NPM Version][npm-image]][npm-url] [![Dependency Status][david-image]][david-url] [![devDependency Status][david-dev-image]][david-dev-url] + +Inputmask is a javascript library which creates an input mask. Inputmask can run against vanilla javascript, jQuery and jqlite. + +An inputmask helps the user with the input by ensuring a predefined format. This can be useful for dates, numerics, phone numbers, ... + +Highlights: +- easy to use +- optional parts anywere in the mask +- possibility to define aliases which hide complexity +- date / datetime masks +- numeric masks +- lots of callbacks +- non-greedy masks +- many features can be enabled/disabled/configured by options +- supports readonly/disabled/dir="rtl" attributes +- support data-inputmask attribute(s) +- alternator-mask +- regex-mask +- dynamic-mask +- preprocessing-mask +- JIT-masking +- value formatting / validating without input element +- AMD/CommonJS support +- dependencyLibs: vanilla javascript, jQuery, jqlite +- [Android support](README_android.md) + +Demo page see [http://robinherbots.github.io/Inputmask](http://robinherbots.github.io/Inputmask) + +Thanks to [Jetbrains](https://www.jetbrains.com/) for providing a free license for their excellent Webstorm IDE. + +## Setup +### dependencyLibs +Inputmask can run against different javascript libraries. +You can choose between: +- inputmask.dependencyLib (vanilla) +- inputmask.dependencyLib.jquery +- inputmask.dependencyLib.jqlite +- .... (others are welcome) + +### Classic web with tag +Include the js-files which you can find in the `dist` folder. + +Inputmask with jQuery as dependencylib. +```html + + +``` + +Inputmask with vanilla dependencylib. +```html + +``` + +If you like to automatically bind the inputmask to the inputs marked with the data-inputmask- ... attributes you may also want to include the inputmask.binding.js + +```html + +``` + +### webpack + +#### Install the package +``` +npm install inputmask --save +``` + +##### Install the latest beta version +``` +npm install inputmask@next --save +``` + +#### In your modules +If you want to include the Inputmask and all extensions. +``` +var Inputmask = require('inputmask'); + +//es6 +import Inputmask from "inputmask"; +``` +For individual extensions. +Every extension exports the Inputmask, so you only need to import the extensions. +See example. +``` +require("inputmask/lib/extensions/inputmask.numeric.extensions"); +var Inputmask = require("inputmask/lib/extensions/inputmask.date.extensions"); + +//es6 +import "inputmask/lib/extensions/inputmask.numeric.extensions"; +import Inputmask from "inputmask/lib/extensions/inputmask.date.extensions"; +``` + +#### Selecting the dependencyLib +By default the vanilla dependencyLib is used. You can select another dependency +by creating an alias in the webpack.config. + +``` + resolve: { + alias: { + "./dependencyLibs/inputmask.dependencyLib": "./dependencyLibs/inputmask.dependencyLib.jquery" + } + }, +``` +## Usage +### via Inputmask class + +```javascript +var selector = document.getElementById("selector"); + +var im = new Inputmask("99-9999999"); +im.mask(selector); + +//or + +Inputmask({"mask": "(999) 999-9999", .... other options .....}).mask(selector); +Inputmask("9-a{1,3}9{1,3}").mask(selector); +Inputmask("9", { repeat: 10 }).mask(selector); + +Inputmask({ regex: "\\d*" }).mask(selector); +Inputmask({ regex: String.raw`\d*` }).mask(selector); +``` + +### via jquery plugin + +```javascript +$(document).ready(function(){ + $(selector).inputmask("99-9999999"); //static mask + $(selector).inputmask({"mask": "(999) 999-9999"}); //specifying options + $(selector).inputmask("9-a{1,3}9{1,3}"); //mask with dynamic syntax +}); +``` + +### via data-inputmask attribute + +```html + + + +``` + +```javascript +$(document).ready(function(){ + $(":input").inputmask(); + or + Inputmask().mask(document.querySelectorAll("input")); +}); +``` + +#### Any option can also be passed through the use of a data attribute. Use data-inputmask-<**_the name of the option_**>="value" + +```html + + +``` + +```javascript +$(document).ready(function(){ + $("#example1").inputmask("99-9999999"); + $("#example2").inputmask(); +}); +``` + +### Allowed HTML-elements +- `` +- `` +- `` +- `` +- `` +- `
` (and all others supported by contenteditable) +- `