UNPKG

formiojs

Version:

Common js library for client side interaction with <form.io>

261 lines (255 loc) • 5.54 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; require("core-js/modules/es.array.map.js"); var _lodash = _interopRequireDefault(require("lodash")); var _Formio = require("../../../Formio"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var _default = [{ key: 'inputMask', ignore: true }, { key: 'allowMultipleMasks', ignore: true }, { key: 'mask', ignore: true }, { type: 'number', input: true, key: 'rows', label: 'Rows', weight: 210, tooltip: 'This allows control over how many rows are visible in the text area.', placeholder: 'Enter the amount of rows' }, { weight: 1350, type: 'checkbox', input: true, key: 'spellcheck', defaultValue: true, label: 'Allow Spellcheck' }, { type: 'select', input: true, key: 'editor', label: 'Editor', tooltip: 'Select the type of WYSIWYG editor to use for this text area.', dataSrc: 'values', data: { values: [{ label: 'None', value: '' }, { label: 'ACE', value: 'ace' }, { label: 'CKEditor', value: 'ckeditor' }, { label: 'Quill', value: 'quill' }] }, weight: 415 }, { type: 'checkbox', input: true, key: 'autoExpand', label: 'Auto Expand', tooltip: 'This will make the TextArea auto expand it\'s height as the user is typing into the area.', weight: 415, conditional: { json: { '==': [{ var: 'data.editor' }, ''] } } }, { type: 'checkbox', input: true, key: 'isUploadEnabled', label: 'Enable Image Upload', weight: 415.1, conditional: { json: { or: [{ '===': [{ var: 'data.editor' }, 'quill'] }, { '===': [{ var: 'data.editor' }, 'ckeditor'] }] } } }, { type: 'select', input: true, key: 'uploadStorage', label: 'Image Upload Storage', placeholder: 'Select your file storage provider', weight: 415.2, tooltip: 'Which storage to save the files in.', valueProperty: 'value', dataSrc: 'custom', data: { custom: function custom() { return _lodash.default.map(_Formio.GlobalFormio.Providers.getProviders('storage'), function (storage, key) { return { label: storage.title, value: key }; }); } }, conditional: { json: { '===': [{ var: 'data.isUploadEnabled' }, true] } } }, { type: 'textfield', input: true, key: 'uploadUrl', label: 'Image Upload Url', weight: 415.3, placeholder: 'Enter the url to post the files to.', tooltip: 'See <a href=\'https://github.com/danialfarid/ng-file-upload#server-side\' target=\'_blank\'>https://github.com/danialfarid/ng-file-upload#server-side</a> for how to set up the server.', conditional: { json: { '===': [{ var: 'data.uploadStorage' }, 'url'] } } }, { type: 'textarea', key: 'uploadOptions', label: 'Image Upload Custom request options', tooltip: 'Pass your custom xhr options(optional)', rows: 5, editor: 'ace', input: true, weight: 415.4, placeholder: "{\n \"withCredentials\": true\n }", conditional: { json: { '===': [{ var: 'data.uploadStorage' }, 'url'] } } }, { type: 'textfield', input: true, key: 'uploadDir', label: 'Image Upload Directory', placeholder: '(optional) Enter a directory for the files', tooltip: 'This will place all the files uploaded in this field in the directory', weight: 415.5, conditional: { json: { '===': [{ var: 'data.isUploadEnabled' }, true] } } }, { type: 'textfield', key: 'fileKey', input: true, label: 'File form-data Key', tooltip: 'Key name that you would like to modify for the file while calling API request.', rows: 5, weight: 415.6, placeholder: 'Enter the key name of a file for form data.', conditional: { json: { and: [{ '===': [{ var: 'data.editor' }, 'quill'] }, { '===': [{ var: 'data.isUploadEnabled' }, true] }, { '===': [{ var: 'data.uploadStorage' }, 'url'] }] } } }, { type: 'select', input: true, key: 'as', label: 'Save As', dataSrc: 'values', tooltip: 'This setting determines how the value should be entered and stored in the database.', clearOnHide: true, data: { values: [{ label: 'String', value: 'string' }, { label: 'JSON', value: 'json' }, { label: 'HTML', value: 'html' }] }, conditional: { json: { or: [{ '===': [{ var: 'data.editor' }, 'quill'] }, { '===': [{ var: 'data.editor' }, 'ace'] }] } }, weight: 416 }, { type: 'textarea', input: true, editor: 'ace', rows: 10, as: 'json', label: 'Editor Settings', tooltip: 'Enter the WYSIWYG editor JSON configuration.', key: 'wysiwyg', customDefaultValue: function customDefaultValue(value, component, row, data, instance) { return instance ? instance.wysiwygDefault : ''; }, conditional: { json: { or: [{ '===': [{ var: 'data.editor' }, 'ace'] }, { '===': [{ var: 'data.editor' }, 'ckeditor'] }, { '===': [{ var: 'data.editor' }, 'quill'] }] } }, weight: 417 }]; exports.default = _default;