!function(f){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=f();else if("function"==typeof define&&define.amd)define([],f);else{var g;g="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this,g.PydioForm=f()}}(function(){return function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a="function"==typeof require&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n||e)},l,l.exports,e,t,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o])+)?>|<\/\w+>/gi,"");result=result.replace('parent.formManagerHiddenIFrameSubmission("',"").replace('");',""),this.uploadComplete(result),this.setState({loading:!1})}.bind(this),function(transport){this.setState({loading:!1})}.bind(this),function(computableEvent){})):this.htmlUpload()},clearImage:function(){var _this=this;global.confirm("Do you want to remove the current image?")&&function(){var prevValue=_this.state.value;_this.setState({value:"ajxp-remove-original",reset:!0},function(){this.props.onChange("ajxp-remove-original",prevValue,{type:"binary"})}.bind(_this))}()},render:function(){var coverImageStyle={backgroundImage:"url("+this.state.imageSrc+")",backgroundPosition:"50% 50%",backgroundSize:"cover"},icons=[];return this.state&&this.state.loading?icons.push(React.createElement("span",{key:"spinner",className:"icon-spinner rotating",style:{opacity:"0"}})):icons.push(React.createElement("span",{key:"camera",className:"icon-camera",style:{opacity:"0"}})),React.createElement("div",null,React.createElement("div",{className:"image-label"},this.props.attributes.label),React.createElement("form",{ref:"uploadForm",encType:"multipart/form-data",target:"uploader_hidden_iframe",method:"post",action:this.getUploadUrl()},React.createElement(BinaryDropZone,{onDrop:this.onDrop,accept:"image/*",style:coverImageStyle},icons)),React.createElement("div",{className:"binary-remove-button",onClick:this.clearImage},React.createElement("span",{key:"remove",className:"mdi mdi-close"})," RESET"),React.createElement("iframe",{style:{display:"none"},id:"uploader_hidden_iframe",name:"uploader_hidden_iframe"}))}}),module.exports=exports.default}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../mixins/FormMixin":15,"./FileDropzone":2,pydio:"pydio","pydio/http/api":"pydio/http/api",react:"react"}],6:[function(require,module,exports){"use strict";exports.__esModule=!0;function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var _mixinsFormMixin=require("../mixins/FormMixin"),_mixinsFormMixin2=_interopRequireDefault(_mixinsFormMixin),React=require("react"),ReactMUI=require("material-ui-legacy");exports.default=React.createClass({displayName:"InputInteger",mixins:[_mixinsFormMixin2.default],keyDown:function(event){var inc=0,multiple=1;if("Enter"==event.key)return void this.toggleEditMode();"ArrowUp"==event.key?inc=1:"ArrowDown"==event.key&&(inc=-1),event.shiftKey&&(multiple=10);var parsed=parseInt(this.state.value);isNaN(parsed)&&(parsed=0);var value=parsed+inc*multiple;this.onChange(null,value)},render:function(){if(this.isDisplayGrid()&&!this.state.editMode){var value=this.state.value;return React.createElement("div",{onClick:this.props.disabled?function(){}:this.toggleEditMode,className:value?"":"paramValue-empty"},value||"Empty")}var intval=void 0;return this.state.value?(intval=parseInt(this.state.value)+"",isNaN(intval)&&(intval=this.state.value+"")):intval="0",React.createElement("span",{className:"integer-input"},React.createElement(ReactMUI.TextField,{value:intval,onChange:this.onChange,onKeyDown:this.keyDown,disabled:this.props.disabled,floatingLabelText:this.isDisplayForm()?this.props.attributes.label:null}))}}),module.exports=exports.default},{"../mixins/FormMixin":15,"material-ui-legacy":"material-ui-legacy",react:"react"}],7:[function(require,module,exports){"use strict";exports.__esModule=!0;function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var _mixinsFormMixin=require("../mixins/FormMixin"),_mixinsFormMixin2=_interopRequireDefault(_mixinsFormMixin),_mixinsFieldWithChoices=require("../mixins/FieldWithChoices"),_mixinsFieldWithChoices2=_interopRequireDefault(_mixinsFieldWithChoices),React=require("react"),_require=require("material-ui"),SelectField=_require.SelectField,MenuItem=_require.MenuItem,Chip=_require.Chip,LangUtils=require("pydio/util/lang"),InputSelectBox=React.createClass({displayName:"InputSelectBox",mixins:[_mixinsFormMixin2.default],getDefaultProps:function(){return{skipBufferChanges:!0}},onDropDownChange:function(event,index,value){this.onChange(event,value),this.toggleEditMode()},onMultipleSelect:function(event,index,newValue){if(-1!=newValue){var currentValue=this.state.value,currentValues="string"==typeof currentValue?currentValue.split(","):currentValue;-1!==!currentValues.indexOf(newValue)&&(currentValues.push(newValue),this.onChange(event,currentValues.join(","))),this.toggleEditMode()}},onMultipleRemove:function(value){var currentValue=this.state.value,currentValues="string"==typeof currentValue?currentValue.split(","):currentValue;-1!==currentValues.indexOf(value)&&(currentValues=LangUtils.arrayWithout(currentValues,currentValues.indexOf(value)),this.onChange(null,currentValues.join(",")))},render:function(){var _this=this,currentValue=this.state.value,menuItems=[],multipleOptions=[];this.props.attributes.mandatory&&"true"==this.props.attributes.mandatory||(!1,menuItems.push(React.createElement(MenuItem,{value:-1,primaryText:this.props.attributes.label+"..."})));var choices=this.props.choices;if(choices.forEach(function(value,key){menuItems.push(React.createElement(MenuItem,{value:key,primaryText:value})),multipleOptions.push({value:key,label:value})}),this.isDisplayGrid()&&!this.state.editMode||this.props.disabled){var value=this.state.value;return choices.get(value)&&(value=choices.get(value)),React.createElement("div",{onClick:this.props.disabled?function(){}:this.toggleEditMode,className:value?"":"paramValue-empty"},value||"Empty","   ",React.createElement("span",{className:"icon-caret-down"}))}if(this.props.multiple&&1==this.props.multiple){var currentValues=currentValue;return"string"==typeof currentValue&&(currentValues=currentValue.split(",")),!!currentValues.length,React.createElement("span",{className:"multiple has-value"},React.createElement("div",{style:{display:"flex",flexWrap:"wrap"}},currentValues.map(function(v){return React.createElement(Chip,{onRequestDelete:function(){_this.onMultipleRemove(v)}},v)})),React.createElement(SelectField,{value:-1,onChange:this.onMultipleSelect,fullWidth:!0,className:this.props.className},menuItems))}return React.createElement("span",null,React.createElement(SelectField,{floatingLabelText:this.props.attributes.label,value:currentValue,onChange:this.onDropDownChange,fullWidth:!0,className:this.props.className},menuItems))}});exports.default=InputSelectBox=_mixinsFieldWithChoices2.default(InputSelectBox),exports.default=InputSelectBox,module.exports=exports.default},{"../mixins/FieldWithChoices":14,"../mixins/FormMixin":15,"material-ui":"material-ui","pydio/util/lang":"pydio/util/lang",react:"react"}],8:[function(require,module,exports){(function(global){"use strict";exports.__esModule=!0;function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var _mixinsActionRunnerMixin=require("../mixins/ActionRunnerMixin"),_mixinsActionRunnerMixin2=_interopRequireDefault(_mixinsActionRunnerMixin),React=require("react");exports.default=React.createClass({displayName:"MonitoringLabel",mixins:[_mixinsActionRunnerMixin2.default],getInitialState:function(){var loadingMessage="Loading";return this.context&&this.context.getMessage?loadingMessage=this.context.getMessage(466,""):global.pydio&&global.pydio.MessageHash&&(loadingMessage=global.pydio.MessageHash[466]),{status:loadingMessage}},componentDidMount:function(){var callback=function(transport){this.setState({status:transport.responseText})}.bind(this);this._poller=function(){this.applyAction(callback)}.bind(this),this._poller(),this._pe=global.setInterval(this._poller,1e4)},componentWillUnmount:function(){this._pe&&global.clearInterval(this._pe)},render:function(){return React.createElement("div",null,this.state.status)}}),module.exports=exports.default}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../mixins/ActionRunnerMixin":13,react:"react"}],9:[function(require,module,exports){"use strict";exports.__esModule=!0;function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var _mixinsFormMixin=require("../mixins/FormMixin"),_mixinsFormMixin2=_interopRequireDefault(_mixinsFormMixin),React=require("react"),ReactMUI=require("material-ui-legacy");exports.default=React.createClass({displayName:"TextField",mixins:[_mixinsFormMixin2.default],render:function(){if(this.isDisplayGrid()&&!this.state.editMode){var value=this.state.value;return value="password"===this.props.attributes.type&&value?"***********":this.state.value,React.createElement("div",{onClick:this.props.disabled?function(){}:this.toggleEditMode,className:value?"":"paramValue-empty"},value||"Empty")}var field=React.createElement(ReactMUI.TextField,{floatingLabelText:this.isDisplayForm()?this.props.attributes.label:null,value:this.state.value||"",onChange:this.onChange,onKeyDown:this.enterToToggle,type:"password"==this.props.attributes.type?"password":null,multiLine:"textarea"==this.props.attributes.type,disabled:this.props.disabled,errorText:this.props.errorText,autoComplete:"off"});return"password"===this.props.attributes.type?React.createElement("form",{autoComplete:"off",style:{display:"inline"}},field):React.createElement("span",null,field)}}),module.exports=exports.default},{"../mixins/FormMixin":15,"material-ui-legacy":"material-ui-legacy",react:"react"}],10:[function(require,module,exports){(function(global){"use strict";exports.__esModule=!0;var _extends=Object.assign||function(target){for(var i=1;i1&&(last=parts.pop(),prev=parts.pop());for(var k=0;k0;)parentKey||(parentKey=treeKeys),parentKey[parentName]||(parentKey[parentName]={}),parentKey=parentKey[parentName],parentName=parts.shift();var type=clientParams[typeKey];if(delete clientParams[typeKey], parentKey&&!parentKey[parentName])if("boolean"==type){var v=clientParams[key];parentKey[parentName]="true"==v||1==v||!0===v}else"integer"==type?parentKey[parentName]=parseInt(clientParams[key]):type&&type.startsWith("group_switch:")&&"string"==typeof clientParams[key]?parentKey[parentName]={group_switch_value:clientParams[key]}:parentKey[parentName]=clientParams[key];else parentKey&&type&&type.startsWith("group_switch:")&&(parentKey[parentName].group_switch_value=clientParams[key]);delete clientParams[key]}});for(key in treeKeys)if(treeKeys.hasOwnProperty(key)){var treeValue=treeKeys[key];clientParams[key+"_ajxptype"]&&0===clientParams[key+"_ajxptype"].indexOf("group_switch:")&&!treeValue.group_switch_value&&(treeValue.group_switch_value=clientParams[key]),clientParams[key]=JSON.stringify(treeValue),clientParams[key+"_ajxptype"]="text/json"}for(var theKey in clientParams)clientParams.hasOwnProperty(theKey)&&(-1==theKey.indexOf("/")&&clientParams[theKey]&&clientParams[theKey+"_ajxptype"]&&clientParams[theKey+"_ajxptype"].startsWith("group_switch:")&&"string"==typeof clientParams[theKey]&&(clientParams[theKey]=JSON.stringify({group_switch_value:clientParams[theKey]}),clientParams[theKey+"_ajxptype"]="text/json"),clientParams.hasOwnProperty(theKey)&&theKey.endsWith("_group_switch")&&delete clientParams[theKey]);return clientParams},Manager}();exports.default=Manager,module.exports=exports.default}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./../fields/AutocompleteBox":1,"./../fields/InputBoolean":3,"./../fields/InputButton":4,"./../fields/InputImage":5,"./../fields/InputInteger":6,"./../fields/InputSelectBox":7,"./../fields/MonitoringLabel":8,"./../fields/TextField":9,"./../fields/ValidPassword":10,"pydio/util/xml":"pydio/util/xml"}],13:[function(require,module,exports){(function(global){"use strict";exports.__esModule=!0;var React=require("react"),PathUtils=require("pydio/util/path");exports.default={propTypes:{attributes:React.PropTypes.object.isRequired,applyButtonAction:React.PropTypes.func,actionCallback:React.PropTypes.func},applyAction:function(callback){var choicesValue=this.props.attributes.choices.split(":"),firstPart=choicesValue.shift();if("run_client_action"===firstPart&&global.pydio)return void global.pydio.getController().fireAction(choicesValue.shift());if(this.props.applyButtonAction){var parameters={get_action:firstPart};choicesValue.length>1&&(parameters.action_plugin_id=choicesValue.shift(),parameters.action_plugin_method=choicesValue.shift()),-1!==this.props.attributes.name.indexOf("/")&&(parameters.button_key=PathUtils.getDirname(this.props.attributes.name)),this.props.applyButtonAction(parameters,callback)}}},module.exports=exports.default}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"pydio/util/path":"pydio/util/path",react:"react"}],14:[function(require,module,exports){(function(global){"use strict";exports.__esModule=!0;var _extends=Object.assign||function(target){for(var i=1;i1?(value=l[0],label=l[1]):value=label=choice,global.pydio.MessageHash[label]&&(label=global.pydio.MessageHash[label]),output.set(value,label)}),{choices:output,parsed:parsed}};function FieldWithChoices(props,context){_classCallCheck(this,FieldWithChoices),_Component.call(this,props,context);var choices=new Map;choices.set("0",this.props.pydio?this.props.pydio.MessageHash["ajxp_admin.home.6"]:" ... "),this.state={choices:choices,choicesParsed:!1}}return FieldWithChoices.prototype.componentDidMount=function(){if(this.props.attributes.choices){var _loadExternalValues=this.loadExternalValues(this.props.attributes.choices),choices=_loadExternalValues.choices,parsed=_loadExternalValues.parsed;this.setState({choices:choices,choicesParsed:parsed})}},FieldWithChoices.prototype.componentWillReceiveProps=function(newProps){if(newProps.attributes.choices&&newProps.attributes.choices!==this.props.attributes.choices){var _loadExternalValues2=this.loadExternalValues(newProps.attributes.choices),choices=_loadExternalValues2.choices,parsed=_loadExternalValues2.parsed;this.setState({choices:choices,choicesParsed:parsed})}},FieldWithChoices.prototype.render=function(){return React.createElement(PydioComponent,_extends({},this.props,this.state))},FieldWithChoices}(Component);return FieldWithChoices=PydioContextConsumer(FieldWithChoices)},module.exports=exports.default}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{pydio:"pydio",react:"react"}],15:[function(require,module,exports){(function(global){"use strict";exports.__esModule=!0;var React=require("react");require("pydio/http/api");exports.default={propTypes:{attributes:React.PropTypes.object.isRequired,name:React.PropTypes.string.isRequired,displayContext:React.PropTypes.oneOf(["form","grid"]),disabled:React.PropTypes.bool,multiple:React.PropTypes.bool,value:React.PropTypes.any,onChange:React.PropTypes.func,onChangeEditMode:React.PropTypes.func,binary_context:React.PropTypes.string,errorText:React.PropTypes.string},getDefaultProps:function(){return{displayContext:"form",disabled:!1}},isDisplayGrid:function(){return"grid"==this.props.displayContext},isDisplayForm:function(){return"form"==this.props.displayContext},toggleEditMode:function(){if(!this.isDisplayForm()){var newState=!this.state.editMode;this.setState({editMode:newState}),this.props.onChangeEditMode&&this.props.onChangeEditMode(newState)}},enterToToggle:function(event){"Enter"==event.key&&this.toggleEditMode()},bufferChanges:function(newValue,oldValue){this.triggerPropsOnChange(newValue,oldValue)},onChange:function(event,value){void 0===value&&(value=event.currentTarget.getValue?event.currentTarget.getValue():event.currentTarget.value),this.changeTimeout&&global.clearTimeout(this.changeTimeout);var newValue=value,oldValue=this.state.value;if(this.props.skipBufferChanges&&this.triggerPropsOnChange(newValue,oldValue),this.setState({dirty:!0,value:newValue}),!this.props.skipBufferChanges){var timerLength=50;"password"===this.props.attributes.type&&(timerLength=1200),this.changeTimeout=global.setTimeout(function(){this.bufferChanges(newValue,oldValue)}.bind(this),timerLength)}},triggerPropsOnChange:function(newValue,oldValue){"password"===this.props.attributes.type?(this.toggleEditMode(),this.props.onChange(newValue,oldValue,{type:this.props.attributes.type})):this.props.onChange(newValue,oldValue)},componentWillReceiveProps:function(newProps){this.setState({value:newProps.value,dirty:!1})},getInitialState:function(){return{editMode:!1,dirty:!1,value:this.props.value}}},module.exports=exports.default}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"pydio/http/api":"pydio/http/api",react:"react"}],16:[function(require,module,exports){"use strict";exports.__esModule=!0;var React=require("react");exports.default={propTypes:{paramName:React.PropTypes.string,paramAttributes:React.PropTypes.object,values:React.PropTypes.object,updateCallback:React.PropTypes.func}},module.exports=exports.default},{react:"react"}],17:[function(require,module,exports){"use strict";exports.__esModule=!0;var _extends=Object.assign||function(target){for(var i=1;i-1&&("true"==p.mandatory||!0===p.mandatory)&&(values&&values.hasOwnProperty(p.name)&&void 0!==values[p.name]&&""!==values[p.name]||failedMandatories.push(p)),"valid-password"===p.type&&this.refs["form-element-"+p.name]&&(this.refs["form-element-"+p.name].isValid()||failedMandatories.push(p))}.bind(this));var newValue;this._internalValid,newValue=!failedMandatories.length,(newValue!==this._internalValid||this.props.forceValidStatusCheck)&&this.props.onValidStatusChange&&this.props.onValidStatusChange(newValue,failedMandatories),this._internalValid=newValue},componentDidMount:function(){this.checkValidStatus(this.props.values)},renderGroupHeader:function(groupLabel,accordionize,index,active){var properties={key:"group-"+groupLabel};if(accordionize){var current=this.state&&this.state.currentActiveGroup?this.state.currentActiveGroup:null;properties.className="group-label-"+(active?"active":"inactive"),properties.onClick=function(){this.setState({currentActiveGroup:current!=index?index:null})}.bind(this),groupLabel=[React.createElement("span",{key:"toggler",className:"group-active-toggler icon-angle-"+(current==index?"down":"right")}),groupLabel]}return React.createElement("h"+(3+this.props.depth),properties,groupLabel)},render:function(){var _this=this,allGroups=[],values=this.getValues(),groupsOrdered=["__DEFAULT__"];allGroups.__DEFAULT__={FIELDS:[]};var replicationGroups={};this.props.parameters.map(function(attributes){var type=attributes.type;if(!(this.props.skipFieldsTypes&&this.props.skipFieldsTypes.indexOf(type)>-1)){var field,paramName=attributes.name;if(!attributes.group_switch_name){var group=attributes.group||"__DEFAULT__";allGroups[group]||(groupsOrdered.push(group),allGroups[group]={FIELDS:[],LABEL:group});var repGroup=attributes.replicationGroup;if(repGroup){replicationGroups[repGroup]||(replicationGroups[repGroup]={PARAMS:[],GROUP:group,POSITION:allGroups[group].FIELDS.length},allGroups[group].FIELDS.push("REPLICATION:"+repGroup));var repAttr=LangUtils.deepCopy(attributes);delete repAttr.replicationGroup,delete repAttr.group,replicationGroups[repGroup].PARAMS.push(repAttr)}else{if(0===type.indexOf("group_switch:"))field=React.createElement(_GroupSwitchPanel2.default,_extends({},this.props,{onChange:this.onSubformChange,paramAttributes:attributes,parameters:this.props.parameters,values:this.props.values,key:paramName,onScrollCallback:null,limitToGroups:null,onValidStatusChange:this.onSubformValidStatusChange}));else if("hidden"!==attributes.type){var helperMark;if(this.props.setHelperData&&this.props.checkHasHelper&&this.props.checkHasHelper(attributes.name,this.props.helperTestFor)){var showHelper=function(){this.props.setHelperData({paramAttributes:attributes,values:values,postValues:this.getValuesForPOST(values),applyButtonAction:this.applyButtonAction},this.props.helperTestFor)}.bind(this);helperMark=React.createElement("span",{className:"icon-question-sign",onClick:showHelper})}var mandatoryMissing=!1,classLegend="form-legend";attributes.errorText?classLegend="form-legend mandatory-missing":attributes.warningText?classLegend="form-legend warning-message":!attributes.mandatory||"true"!==attributes.mandatory&&!0!==attributes.mandatory||-1===["string","textarea","image","integer"].indexOf(attributes.type)||values[paramName]||(mandatoryMissing=!0,classLegend="form-legend mandatory-missing");var props={ref:"form-element-"+paramName,attributes:attributes,name:paramName,value:values[paramName],onChange:function(newValue,oldValue,additionalFormData){this.onParameterChange(paramName,newValue,oldValue,additionalFormData)}.bind(this),disabled:this.props.disabled||attributes.readonly,multiple:attributes.multiple,binary_context:this.props.binary_context,displayContext:"form",applyButtonAction:this.applyButtonAction,errorText:mandatoryMissing?pydio.MessageHash[621]:attributes.errorText?attributes.errorText:null};field=React.createElement("div",{key:paramName,className:"form-entry-"+attributes.type},_managerManager2.default.createFormElement(props),React.createElement("div",{className:classLegend},attributes.warningText?attributes.warningText:attributes.description," ",helperMark))}else this._hiddenValues[paramName]=void 0!==values[paramName]?values[paramName]:attributes.default;field&&allGroups[group].FIELDS.push(field)}}}}.bind(this));for(var rGroup in replicationGroups)if(replicationGroups.hasOwnProperty(rGroup)){var rGroupData=replicationGroups[rGroup];allGroups[rGroupData.GROUP].FIELDS[rGroupData.POSITION]=React.createElement(_ReplicationPanel2.default,_extends({},this.props,{key:"replication-group-"+rGroupData.PARAMS[0].name,onChange:this.onSubformChange,onParameterChange:null,values:this.getValues(),depth:this.props.depth+1,parameters:rGroupData.PARAMS,applyButtonAction:this.applyButtonAction,onScrollCallback:null}))}var groupPanes=[],accordionize=this.props.accordionizeIfGroupsMoreThan&&groupsOrdered.length>this.props.accordionizeIfGroupsMoreThan,currentActiveGroup=this.state&&this.state.currentActiveGroup?this.state.currentActiveGroup:0;if(groupsOrdered.map(function(g,gIndex){if(!this.props.limitToGroups||-1!==this.props.limitToGroups.indexOf(g)){var header,gData=allGroups[g],className="pydio-form-group",active=!1;accordionize&&(active=currentActiveGroup==gIndex,className+=gIndex==currentActiveGroup?" form-group-active":" form-group-inactive"),gData.FIELDS.length&&(!gData.LABEL||this.props.skipFieldsTypes&&this.props.skipFieldsTypes.indexOf("GroupHeader")>-1||(header=this.renderGroupHeader(gData.LABEL,accordionize,gIndex,active)),0==this.props.depth?(className+=" z-depth-1",groupPanes.push(React.createElement(Paper,{className:className,key:"pane-"+g},0==gIndex&&this.props.header?this.props.header:null,header,React.createElement("div",null,gData.FIELDS),gIndex==groupsOrdered.length-1&&this.props.footer?this.props.footer:null))):groupPanes.push(React.createElement("div",{className:className,key:"pane-"+g},0==gIndex&&this.props.header?this.props.header:null,header,React.createElement("div",null,gData.FIELDS),gIndex==groupsOrdered.length-1&&this.props.footer?this.props.footer:null)))}}.bind(this)),this.props.additionalPanes&&function(){var otherPanes={top:[],bottom:[]},depth=_this.props.depth,index=0,_loop=function(k){if(!otherPanes.hasOwnProperty(k))return"continue";_this.props.additionalPanes[k]&&_this.props.additionalPanes[k].map(function(p){0==depth?otherPanes[k].push(React.createElement(Paper,{className:"pydio-form-group additional",key:"other-pane-"+index},p)):otherPanes[k].push(React.createElement("div",{className:"pydio-form-group additional",key:"other-pane-"+index},p)),index++})};for(var k in otherPanes){_loop(k)}groupPanes=otherPanes.top.concat(groupPanes).concat(otherPanes.bottom)}(),!this.props.tabs)return React.createElement("div",{className:(this.props.className?this.props.className+" ":" ")+"pydio-form-panel"+(groupPanes.length%2?" form-panel-odd":""),onScroll:this.props.onScrollCallback},groupPanes);var _ret3=function(){var className=_this.props.className,initialSelectedIndex=0,i=0,tabs=_this.props.tabs.map(function(tDef){var label=tDef.label,groups=tDef.groups;tDef.selected&&(initialSelectedIndex=i);var panes=groups.map(function(gId){return groupPanes[gId]?groupPanes[gId]:null});return i++,React.createElement(Tab,{label:label,key:label,value:this.props.onTabChange?i-1:void 0},React.createElement("div",{className:(className?className+" ":" ")+"pydio-form-panel"+(panes.length%2?" form-panel-odd":"")},panes))}.bind(_this));return void 0!==_this.state.tabSelectedIndex&&(initialSelectedIndex=_this.state.tabSelectedIndex),{v:React.createElement("div",{className:"layout-fill vertical-layout tab-vertical-layout"},React.createElement(Tabs,{ref:"tabs",initialSelectedIndex:initialSelectedIndex,value:_this.props.onTabChange?initialSelectedIndex:void 0,onChange:_this.props.onTabChange?function(i){_this.setState({tabSelectedIndex:i}),_this.props.onTabChange(i)}:void 0,style:{flex:1,display:"flex",flexDirection:"column"},contentContainerStyle:{flex:1,overflowY:"auto"}},tabs))}}();return"object"==typeof _ret3?_ret3.v:void 0}}),module.exports=exports.default},{"../manager/Manager":12,"./GroupSwitchPanel":19,"./ReplicationPanel":21,"material-ui":"material-ui","material-ui-legacy":"material-ui-legacy","pydio/http/api":"pydio/http/api","pydio/util/lang":"pydio/util/lang",react:"react"}],19:[function(require,module,exports){"use strict";exports.__esModule=!0;function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var _FormPanel=require("./FormPanel"),_FormPanel2=_interopRequireDefault(_FormPanel),_fieldsInputSelectBox=require("../fields/InputSelectBox"),_fieldsInputSelectBox2=_interopRequireDefault(_fieldsInputSelectBox),React=require("react"),LangUtils=require("pydio/util/lang");exports.default=React.createClass({displayName:"GroupSwitchPanel",propTypes:{paramAttributes:React.PropTypes.object.isRequired,parameters:React.PropTypes.array.isRequired,values:React.PropTypes.object.isRequired,onChange:React.PropTypes.func.isRequired},computeSubPanelParameters:function(){var switchName=this.props.paramAttributes.type.split(":").pop(),parentName=this.props.paramAttributes.name,switchValues={},potentialSubSwitches=[];this.props.parameters.map(function(p){if(p.group_switch_name){if(p.group_switch_name!=switchName)return void potentialSubSwitches.push(p);var crtSwitch=p.group_switch_value;switchValues[crtSwitch]||(switchValues[crtSwitch]={label:p.group_switch_label,fields:[],values:{},fieldsKeys:{}}),p=LangUtils.deepCopy(p),delete p.group_switch_name,p.name=parentName+"/"+p.name;var vKey=p.name,paramName=vKey;switchValues[crtSwitch].fieldsKeys[paramName]||(switchValues[crtSwitch].fields.push(p),switchValues[crtSwitch].fieldsKeys[paramName]=paramName,this.props.values&&this.props.values[vKey]&&(switchValues[crtSwitch].values[paramName]=this.props.values[vKey]))}}.bind(this));for(var k in switchValues)if(switchValues.hasOwnProperty(k)){var sv=switchValues[k];sv.fields=sv.fields.concat(potentialSubSwitches)}return switchValues},clearSubParametersValues:function(parentName,newValue,newFields){var vals=LangUtils.deepCopy(this.props.values),toRemove={};for(var key in vals)vals.hasOwnProperty(key)&&0===key.indexOf(parentName+"/")&&(toRemove[key]="");vals[parentName]=newValue,newFields.map(function(p){"hidden"==p.type&&p.default&&!p.group_switch_name||p.group_switch_name==parentName?(vals[p.name]=p.default,void 0!==toRemove[p.name]&&delete toRemove[p.name]):0===p.name.indexOf(parentName+"/")&&p.default&&(p.type&&p.type.startsWith("group_switch:"),vals[p.name]=p.default)}),this.props.onChange(vals,!0,toRemove)},onChange:function(newValues,dirty,removeValues){this.props.onChange(newValues,!0,removeValues)},render:function(){var attributes=this.props.paramAttributes,values=this.props.values,paramName=attributes.name,switchValues=this.computeSubPanelParameters(attributes),selectorValues=new Map;Object.keys(switchValues).map(function(k){selectorValues.set(k,switchValues[k].label)});var selectorChanger=function(newValue){this.clearSubParametersValues(paramName,newValue,switchValues[newValue]?switchValues[newValue].fields:[])}.bind(this),subForm=void 0,selectorLegend=void 0,selector=React.createElement(_fieldsInputSelectBox2.default,{key:paramName,name:paramName,className:"group-switch-selector",attributes:{name:paramName,choices:selectorValues,label:attributes.label,mandatory:attributes.mandatory},value:values[paramName],onChange:selectorChanger,displayContext:"form",disabled:this.props.disabled,ref:"subFormSelector"}),helperMark=void 0;if(this.props.setHelperData&&this.props.checkHasHelper&&this.props.checkHasHelper(attributes.name,this.props.helperTestFor)){var showHelper=function(){this.props.setHelperData({paramAttributes:attributes,values:values})}.bind(this);helperMark=React.createElement("span",{className:"icon-question-sign",onClick:showHelper})}return selectorLegend=React.createElement("div",{className:"form-legend"},attributes.description," ",helperMark),values[paramName]&&switchValues[values[paramName]]&&(React.createElement("h4",null,values[paramName]),subForm=React.createElement(_FormPanel2.default,{onParameterChange:this.props.onParameterChange,applyButtonAction:this.props.applyButtonAction,disabled:this.props.disabled,ref:paramName+"-SUB",key:paramName+"-SUB",className:"sub-form",parameters:switchValues[values[paramName]].fields,values:values,depth:this.props.depth+1,onChange:this.onChange,checkHasHelper:this.props.checkHasHelper,setHelperData:this.props.setHelperData,helperTestFor:values[paramName],accordionizeIfGroupsMoreThan:5})),React.createElement("div",{className:"sub-form-group"},selector,selectorLegend,subForm)}}),module.exports=exports.default},{"../fields/InputSelectBox":7,"./FormPanel":18,"pydio/util/lang":"pydio/util/lang",react:"react"}],20:[function(require,module,exports){"use strict";exports.__esModule=!0;var _extends=Object.assign||function(target){for(var i=1;i0?"_"+nextIndex:"")]=""}),_this.props.onChange(indexed,!0,lastRow)}():this.props.onChange(indexed,!0))},instances:function(){for(var _this2=this,rows=[],subVal=void 0,index=0;subVal=this.buildSubValue(this.props.values,index);)index++,rows.push(subVal);var firstParam=this.props.parameters[0];return rows.length||"true"!==firstParam.replicationMandatory||function(){var emptyValue={};_this2.props.parameters.map(function(p){emptyValue[p.name]=p.default||""}),rows.push(emptyValue)}(),rows},addRow:function(){var newValue={},currentValues=this.instances();this.props.parameters.map(function(p){newValue[p.name]=p.default||""}),currentValues.push(newValue),this.indexValues(currentValues)},removeRow:function(index){var instances=this.instances(),removeInst=instances[index];instances=LangUtils.arrayWithout(this.instances(),index),instances.push(removeInst),this.indexValues(instances,!0)},swapRows:function(i,j){var instances=this.instances(),tmp=instances[j];instances[j]=instances[i],instances[i]=tmp,this.indexValues(instances)},onChange:function(index,newValues,dirty){var instances=this.instances();instances[index]=newValues,this.indexValues(instances)},onParameterChange:function(index,paramName,newValue,oldValue){var instances=this.instances();instances[index][paramName]=newValue,this.indexValues(instances)},render:function(){var _this3=this,parameters=this.props.parameters,firstParam=parameters[0],replicationTitle=firstParam.replicationTitle||firstParam.label,replicationDescription=firstParam.replicationDescription||firstParam.description,replicationMandatory="true"===firstParam.replicationMandatory,instances=this.instances(),multiple=instances.length>1,rows=instances.map(function(subValues,index){var onSwapUp=void 0,onSwapDown=void 0,onRemove=void 0,onParameterChange=function(paramName,newValue,oldValue){_this3.onParameterChange(index,paramName,newValue,oldValue)};multiple&&index>0&&(onSwapUp=function(){_this3.swapRows(index,index-1)}),multiple&&index