Skip to content

Commit

Permalink
IE11 Compatibility, Hotfixes (#457)
Browse files Browse the repository at this point in the history
* Build process refactor WIP

* Start switch to npm only

* IE11 compatibility

* Return event so dispatch functions correctly

* Fix classNames conditional

* IE11 compatibility

* Return event so dispatch functions correctly

* IE11 compatibility

* Fix classNames conditional

* Add required attribute to base control, remove for checkbox-group

* Rebase against dev

* IE11 compatibility

* Add args argument to mi18n lookup, attach dom element reference to Control instance, Add support for HTML5 constraint validation for checkbox-groups

* rebase from chore/build-process

* Sync up dev, add .map files to .gitignore

* disableInjectedStyle option (#455)

* Bugfix: regeneratorRuntime

* Add option to disableInjectedStyle

* Other text and option should have different names. Resolves #442 (#456)

* Fix syntax
  • Loading branch information
kevinchappell committed May 16, 2017
1 parent ac14ac6 commit 82a4f21
Show file tree
Hide file tree
Showing 51 changed files with 1,933 additions and 21,922 deletions.
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -2,5 +2,6 @@ node_modules
bower_components
npm-debug.log
demo/assets/**/*.map
dist/*.map
site
.DS_Store
2 changes: 0 additions & 2 deletions demo/assets/js/control_plugins/starRating.js

This file was deleted.

1 change: 1 addition & 0 deletions demo/assets/js/control_plugins/starRating.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 0 additions & 2 deletions demo/assets/js/control_plugins/textarea.trumbowyg.js

This file was deleted.

1 change: 1 addition & 0 deletions demo/assets/js/control_plugins/textarea.trumbowyg.min.js

Large diffs are not rendered by default.

71 changes: 40 additions & 31 deletions demo/assets/js/demo.js
@@ -1,5 +1,5 @@
jQuery(function($) {
let fields = [
var fields = [
{
label: 'Star Rating',
attrs: {
Expand All @@ -9,7 +9,7 @@ jQuery(function($) {
}
];

let templates = {
var templates = {
starRating: function(fieldData) {
return {
field: '<span id="'+fieldData.name+'">',
Expand All @@ -20,7 +20,7 @@ jQuery(function($) {
}
};

let inputSets = [{
var inputSets = [{
label: 'User Details',
name: 'user-details', // optional
showHeader: true, // optional
Expand Down Expand Up @@ -84,33 +84,34 @@ jQuery(function($) {
};

// test disabledAttrs
let disabledAttrs = ['placeholder'];
var disabledAttrs = ['placeholder'];

const fbOptions = {
var fbOptions = {
subtypes: {
text: ['datetime-local']
},
onSave: function(e, formData) {
toggleEdit();
$('.render-wrap').formRender({
formData,
templates
formData: formData,
templates: templates
});
window.sessionStorage.setItem('formData', JSON.stringify(formData));
},
stickyControls: {
enable: true
},
sortableControls: true,
fields,
templates,
inputSets,
typeUserDisabledAttrs,
typeUserAttrs,
fields: fields,
templates: templates,
inputSets: inputSets,
typeUserDisabledAttrs: typeUserDisabledAttrs,
typeUserAttrs: typeUserAttrs,
disableInjectedStyle: false,
// disabledAttrs
};
let formData = window.sessionStorage.getItem('formData');
let editing = true;
var formData = window.sessionStorage.getItem('formData');
var editing = true;

if (formData) {
fbOptions.formData = JSON.parse(formData);
Expand All @@ -125,46 +126,54 @@ jQuery(function($) {
return editing = !editing;
}

const setFormData = '[{"type":"text","label":"Full Name","subtype":"text","className":"form-control","name":"text-1476748004559"},{"type":"select","label":"Occupation","className":"form-control","name":"select-1476748006618","values":[{"label":"Street Sweeper","value":"option-1","selected":true},{"label":"Moth Man","value":"option-2"},{"label":"Chemist","value":"option-3"}]},{"type":"textarea","label":"Short Bio","rows":"5","className":"form-control","name":"textarea-1476748007461"}]';
var setFormData = '[{"type":"text","label":"Full Name","subtype":"text","className":"form-control","name":"text-1476748004559"},{"type":"select","label":"Occupation","className":"form-control","name":"select-1476748006618","values":[{"label":"Street Sweeper","value":"option-1","selected":true},{"label":"Moth Man","value":"option-2"},{"label":"Chemist","value":"option-3"}]},{"type":"textarea","label":"Short Bio","rows":"5","className":"form-control","name":"textarea-1476748007461"}]';

const formBuilder = $('.build-wrap').formBuilder(fbOptions);
const fbPromise = formBuilder.promise;
var formBuilder = $('.build-wrap').formBuilder(fbOptions);
var fbPromise = formBuilder.promise;

fbPromise.then(function(fb) {
let apiBtns = {
var apiBtns = {
showData: fb.actions.showData,
clearFields: fb.actions.clearFields,
getData: () => console.log(fb.actions.getData()),
setData: () => fb.actions.setData(setFormData),
addField: () => {
let field = {
getData: function() {
console.log(fb.actions.getData());
},
setData: function() {
fb.actions.setData(setFormData);
},
addField: function() {
var field = {
type: 'text',
class: 'form-control',
label: 'Text Field added at: ' + new Date().getTime()
};
fb.actions.addField(field);
},
removeField: () => fb.actions.removeField(),
testSubmit: () => {
console.log(document.forms[0].checkValidity());
// document.forms[0].submit()
removeField: function() {
fb.actions.removeField();
},
testSubmit: function() {
console.log('Can submit: ', document.forms[0].checkValidity());
},
resetDemo: () => {
resetDemo: function() {
window.sessionStorage.removeItem('formData');
location.reload();
}
};

Object.keys(apiBtns).forEach(action => {
Object.keys(apiBtns).forEach(function(action) {
document.getElementById(action)
.addEventListener('click', e => apiBtns[action]());
.addEventListener('click', function(e) {
apiBtns[action]();
});
});

document.getElementById('setLanguage')
.addEventListener('change', e => fb.actions.setLang(e.target.value));
.addEventListener('change', function(e) {
fb.actions.setLang(e.target.value);
});
});


document.getElementById('edit-form').onclick = function() {
toggleEdit();
};
Expand Down
7,870 changes: 419 additions & 7,451 deletions demo/assets/js/form-builder.js

Large diffs are not rendered by default.

Binary file added demo/assets/js/form-builder.js.gz
Binary file not shown.
2 changes: 1 addition & 1 deletion demo/assets/js/form-builder.min.js

Large diffs are not rendered by default.

Binary file modified demo/assets/js/form-builder.min.js.gz
Binary file not shown.
3,728 changes: 372 additions & 3,356 deletions demo/assets/js/form-render.js

Large diffs are not rendered by default.

Binary file added demo/assets/js/form-render.js.gz
Binary file not shown.
2 changes: 1 addition & 1 deletion demo/assets/js/form-render.min.js

Large diffs are not rendered by default.

Binary file modified demo/assets/js/form-render.min.js.gz
Binary file not shown.
6 changes: 5 additions & 1 deletion demo/assets/js/form-render.min.js.map

Large diffs are not rendered by default.

7 changes: 7 additions & 0 deletions demo/assets/js/jquery-ui.min.js

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions demo/assets/js/jquery.min.js

Large diffs are not rendered by default.

5 changes: 1 addition & 4 deletions demo/assets/js/vendor.min.js 100644 → 100755

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion demo/index.html
Expand Up @@ -45,7 +45,8 @@ <h2>i18n</h2>
</select>
</div>
</div>
<script src="assets/js/vendor.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-sortable/0.9.13/jquery-sortable-min.js"></script>
<script src="assets/js/form-builder.min.js"></script>
<script src="assets/js/form-render.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/rateYo/2.3.1/jquery.rateyo.min.js"></script>
Expand Down
1 change: 1 addition & 0 deletions dist/control_plugins/starRating.js.map

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions dist/control_plugins/starRating.min.js

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions dist/control_plugins/textarea.trumbowyg.js.map

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions dist/control_plugins/textarea.trumbowyg.min.js

Large diffs are not rendered by default.

0 comments on commit 82a4f21

Please sign in to comment.