!function(e){function r(e,r,o){return 4===arguments.length?t.apply(this,arguments):void n(e,{declarative:!0,deps:r,declare:o})}function t(e,r,t,o){n(e,{declarative:!1,deps:r,executingRequire:t,execute:o})}function n(e,r){r.name=e,e in p||(p[e]=r),r.normalizedDeps=r.deps}function o(e,r){if(r[e.groupIndex]=r[e.groupIndex]||[],-1==v.call(r[e.groupIndex],e)){r[e.groupIndex].push(e);for(var t=0,n=e.normalizedDeps.length;n>t;t++){var a=e.normalizedDeps[t],u=p[a];if(u&&!u.evaluated){var d=e.groupIndex+(u.declarative!=e.declarative);if(void 0===u.groupIndex||u.groupIndex=0;a--){for(var u=t[a],i=0;ia;a++){var d=t.importers[a];if(!d.locked)for(var i=0;ia;a++){var l,s=r.normalizedDeps[a],c=p[s],v=x[s];v?l=v.exports:c&&!c.declarative?l=c.esModule:c?(d(c),v=c.module,l=v.exports):l=f(s),v&&v.importers?(v.importers.push(t),t.dependencies.push(v)):t.dependencies.push(null),t.setters[a]&&t.setters[a](l)}}}function i(e){var r,t=p[e];if(t)t.declarative?c(e,[]):t.evaluated||l(t),r=t.module.exports;else if(r=f(e),!r)throw new Error("Unable to load dependency "+e+".");return(!t||t.declarative)&&r&&r.__useDefault?r["default"]:r}function l(r){if(!r.module){var t={},n=r.module={exports:t,id:r.name};if(!r.executingRequire)for(var o=0,a=r.normalizedDeps.length;a>o;o++){var u=r.normalizedDeps[o],d=p[u];d&&l(d)}r.evaluated=!0;var c=r.execute.call(e,function(e){for(var t=0,n=r.deps.length;n>t;t++)if(r.deps[t]==e)return i(r.normalizedDeps[t]);throw new TypeError("Module "+e+" not declared as a dependency.")},t,n);c&&(n.exports=c),t=n.exports,t&&t.__esModule?r.esModule=t:r.esModule=s(t)}}function s(r){if(r===e)return r;var t={};if("object"==typeof r||"function"==typeof r)if(g){var n;for(var o in r)(n=Object.getOwnPropertyDescriptor(r,o))&&h(t,o,n)}else{var a=r&&r.hasOwnProperty;for(var o in r)(!a||r.hasOwnProperty(o))&&(t[o]=r[o])}return t["default"]=r,h(t,"__useDefault",{value:!0}),t}function c(r,t){var n=p[r];if(n&&!n.evaluated&&n.declarative){t.push(r);for(var o=0,a=n.normalizedDeps.length;a>o;o++){var u=n.normalizedDeps[o];-1==v.call(t,u)&&(p[u]?c(u,t):f(u))}n.evaluated||(n.evaluated=!0,n.module.execute.call(e))}}function f(e){if(D[e])return D[e];if("@node/"==e.substr(0,6))return y(e.substr(6));var r=p[e];if(!r)throw"Module "+e+" not present.";return a(e),c(e,[]),p[e]=void 0,r.declarative&&h(r.module.exports,"__esModule",{value:!0}),D[e]=r.declarative?r.module.exports:r.esModule}var p={},v=Array.prototype.indexOf||function(e){for(var r=0,t=this.length;t>r;r++)if(this[r]===e)return r;return-1},g=!0;try{Object.getOwnPropertyDescriptor({a:0},"a")}catch(m){g=!1}var h;!function(){try{Object.defineProperty({},"a",{})&&(h=Object.defineProperty)}catch(e){h=function(e,r,t){try{e[r]=t.value||t.get.call(e)}catch(n){}}}}();var x={},y="undefined"!=typeof System&&System._nodeRequire||"undefined"!=typeof require&&require.resolve&&"undefined"!=typeof process&&require,D={"@empty":{}};return function(e,n,o){return function(a){a(function(a){for(var u={_nodeRequire:y,register:r,registerDynamic:t,get:f,set:function(e,r){D[e]=r},newModule:function(e){return e}},d=0;d1)for(var d=1;d' }); EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'empty', name: 'no control', subtitle: 'no control', group: 'Blank', formlyType: 'blank', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ label: '
\n
\n
\n
\n
\n
', control: 'empty', cssClass: 'col-xs-12' }, { addToGroupCtrl: 'blank' }); EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'Header', name: 'Header', subtitle: 'no control', group: 'Decoration', formlyType: 'header', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ label: ['
\n
\n
\n

Header

\n
\n
\n
\n
'].join(''), control: 'Header', cssClass: 'col-xs-12' }, { addToGroupCtrl: 'headers' }); var subTitleTemplate = '\n
\n
\n

{{options.templateOptions.placeholder}}

\n
\n

\n
'; formlyConfigProvider.setType({ name: 'subTitle', template: subTitleTemplate }); EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'Subtitle', name: 'Subtitle', subtitle: 'no control', group: 'Decoration', formlyType: 'subTitle', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ 'label': '
\n
\n
\n

SubTitle

\n
\n
\n
\n
', 'control': 'Subtitle', 'cssClass': 'col-xs-12' }, { addToGroupCtrl: 'headers' }); EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'TextInput', name: 'Text input', subtitle: 'Text input', group: 'input', formlyType: 'input', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); /** * drag and drop text input (basic) control template * * * @PARAM 1 : control template object (drag an drop) * @PARAM 2 : object to indicates in which group of control it will be inserted * (related to _dragDropConfigModel.containerConfig.decoration in dragDropConfig provider) */ easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ 'label': '
\n
\n \n
\n \n

Description

\n
\n
\n
', 'control': 'TextInput', 'cssClass': 'col-xs-12' }, { addToGroupCtrl: 'inputs' }); /** * Add text input (Password) * * note : formly template already exists * no need to create a custom one * * just declare in EasyFormGenFormlyBindingModelsProvider */ EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'Password', name: 'Password', subtitle: 'Password', group: 'input', formlyType: 'input', formlySubtype: 'password', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); /** * drag and drop text input — password —control template * * * @PARAM 1 : control template object (drag an drop) * @PARAM 2 : object to indicates in which group of control it will be inserted * (related to _dragDropConfigModel.containerConfig.decoration in dragDropConfig provider) */ easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ 'label': '
\n
\n \n
\n \n

Description

\n
\n
\n
', 'control': 'Password', 'cssClass': 'col-xs-12' }, { addToGroupCtrl: 'inputs' }); /** * Add angular UI date picker * * thx Kent C. Dodds for formly config template (since it was a huge config) */ var attributes = ['date-disabled', 'custom-class', 'show-weeks', 'starting-day', 'init-date', 'min-mode', 'max-mode', 'format-day', 'format-month', 'format-year', 'format-day-header', 'format-day-title', 'format-month-title', 'year-range', 'shortcut-propagation', 'datepicker-popup', 'show-button-bar', 'current-text', 'clear-text', 'close-text', 'close-on-date-selection', 'datepicker-append-to-body']; var bindings = ['datepicker-mode', 'min-date', 'max-date']; var ngModelAttrs = {}; angular.forEach(attributes, function (attr) { return ngModelAttrs[camelize(attr)] = { attribute: attr }; }); angular.forEach(bindings, function (binding) { return ngModelAttrs[camelize(binding)] = { bound: binding }; }); function camelize(string) { string = string.replace(/[\-_\s]+(.)?/g, function (match, chr) { return chr ? chr.toUpperCase() : ''; }); // Ensure 1st char is always lowercase return string.replace(/^([A-Z])/, function (match, chr) { return chr ? chr.toLowerCase() : ''; }); } var angularUIDatePickerTemplate = '\n '; formlyConfigProvider.setType({ name: 'datepicker', template: angularUIDatePickerTemplate, wrapper: ['bootstrapLabel', 'bootstrapHasError'], controller: ['$scope', function ($scope) { $scope.open = function ($event) { $event.preventDefault(); $event.stopPropagation(); $scope.opened = true; }; }], defaultOptions: { ngModelAttrs: ngModelAttrs, templateOptions: { addonLeft: { 'class': 'glyphicon glyphicon-calendar', onClick: function onClick(options) { return options.templateOptions.isOpen = !options.templateOptions.isOpen; } }, onFocus: function onFocus($viewValue, $modelValue, scope) { return scope.to.isOpen = !scope.to.isOpen; }, datepickerOptions: {} } } }); EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'Date', name: 'Date', subtitle: 'Date', group: 'input', formlyType: 'datepicker', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [], datepickerPopup: 'dd-MMMM-yyyy' }); /** * drag and drop text input — date — control template (using angular UI datepicker) * * * @PARAM 1 : control template object (drag an drop) * @PARAM 2 : object to indicates in which group of control it will be inserted * (related to _dragDropConfigModel.containerConfig.decoration in dragDropConfig provider) */ easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ label: '\n
\n
\n \n
\n\t\t\t\t\t
\n \t\t\t\t\t\n \t\t\t\t\t\n\t\t\t\t\t
\n\t\t\t\t
\n

description

\n
\n
', control: 'Date', cssClass: 'col-xs-12' }, { addToGroupCtrl: 'inputs' }); /** * Add textarea * * note : formly template already exists * no need to create a custom one * * just declare in EasyFormGenFormlyBindingModelsProvider */ EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'Texarea', name: 'Textarea', subtitle: 'Textarea', group: 'Textarea', formlyType: 'textarea', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); /** * drag and drop textarea control template * * * @PARAM 1 : control template object (drag an drop) * @PARAM 2 : object to indicates in which group of control it will be inserted * (related to _dragDropConfigModel.containerConfig.decoration in dragDropConfig provider) */ easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ 'label': '\n
\n
\n \n
\n \n

description

\n
\n
\n
', 'control': 'Texarea', 'cssClass': 'col-xs-12' }, { addToGroupCtrl: 'textareas' }); /** * Add rich text editor control (using textAngular) * */ var richTexEditorTemplate = '\n \n '; formlyConfigProvider.setType({ name: 'richEditor', template: richTexEditorTemplate }); EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'RichTextEditor', name: 'RichTextEditor', subtitle: 'RichTextEditor', group: 'Textarea', formlyType: 'richEditor', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); /** * drag and drop rich text editor control template (using textAngular) * * * @PARAM 1 : control template object (drag an drop) * @PARAM 2 : object to indicates in which group of control it will be inserted * (related to _dragDropConfigModel.containerConfig.decoration in dragDropConfig provider) */ easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ label: '\n
\n
\n \n
\n \n

description

\n
\n
\n
', control: 'RichTextEditor', cssClass: 'col-xs-12' }, { addToGroupCtrl: 'textareas' }); /** * Add radio * * note : formly template already exists * no need to create a custom one * * just declare in EasyFormGenFormlyBindingModelsProvider */ EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'Radio', name: 'Radio', subtitle: 'Radio', options: [], group: 'Radio', formlyType: 'radio', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); /** * drag and drop radio control template (using textAngular) * * * @PARAM 1 : control template object (drag an drop) * @PARAM 2 : object to indicates in which group of control it will be inserted * (related to _dragDropConfigModel.containerConfig.decoration in dragDropConfig provider) */ easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ 'label': '\n
\n
\n \n
\n
\n
\n \n
\n
\n \n
\n

description

\n
\n
\n
', 'control': 'Radio', 'cssClass': 'col-xs-12' }, { addToGroupCtrl: 'radios' }); /** * Add checkbox * * note : formly template already exists * no need to create a custom one * * just declare in EasyFormGenFormlyBindingModelsProvider */ EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'Checkbox', name: 'Checkbox', subtitle: 'Checkbox', group: 'Checkbox', formlyType: 'checkbox', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); /** * drag and drop checkbox control template (using textAngular) * * * @PARAM 1 : control template object (drag an drop) * @PARAM 2 : object to indicates in which group of control it will be inserted * (related to _dragDropConfigModel.containerConfig.decoration in dragDropConfig provider) */ easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ label: '\n
\n
\n \n
\n

description

\n
', control: 'Checkbox', cssClass: 'col-xs-12' }, { addToGroupCtrl: 'checkboxes' }); /** * Add basic Select control * * using nya-bs-select */ var basicSelectTemplate = '\n
    \n
  1. \n {{option.name}} \n
  2. \n
'; formlyConfigProvider.setType({ name: 'basicSelect', template: basicSelectTemplate }); EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'BasicSelect', name: 'Basic select', subtitle: 'Basic select', options: [], group: 'Select', formlyType: 'basicSelect', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); /** * drag and drop basic select control template (using textAngular) * * * @PARAM 1 : control template object (drag an drop) * @PARAM 2 : object to indicates in which group of control it will be inserted * (related to _dragDropConfigModel.containerConfig.decoration in dragDropConfig provider) */ easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ label: '\n
\n
\n
\n\n
    \n \n \n\n
\n
', control: 'BasicSelect', cssClass: 'col-xs-12' }, { addToGroupCtrl: 'selects' }); /** * Add Grouped Select control * * using nya-bs-select */ var groupedSelectTemplate = '\n
    \n
  1. \n {{$group}}\n \n {{option.name}}\n \n \n
  2. \n
'; formlyConfigProvider.setType({ name: 'groupedSelect', template: groupedSelectTemplate }); EasyFormGenFormlyBindingModelsProvider.addEasyFormControlToList({ id: 'GroupedSelect', name: 'Grouped Select', subtitle: 'Grouped Select', options: [], group: 'Select', formlyType: 'groupedSelect', formlySubtype: '', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyOptions: [] }); /** * drag and drop grouped select control template (using textAngular) * * * @PARAM 1 : control template object (drag an drop) * @PARAM 2 : object to indicates in which group of control it will be inserted * (related to _dragDropConfigModel.containerConfig.decoration in dragDropConfig provider) */ easyFormDragWayConfigProvider.addControlToDragDropPresentationModel({ label: '\n
\n
\n
\n
    \n \n
\n
', control: 'GroupedSelect', cssClass: 'col-xs-12' }, { addToGroupCtrl: 'selects' }); } return { setters: [], execute: function () { formlyConfig.$inject = ['formlyConfigProvider', 'EasyFormGenFormlyBindingModelsProvider', 'easyFormDragWayConfigProvider']; _export('default', formlyConfig); } }; }); $__System.registerDynamic("4", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = { "stepway": {"version": "1.1.0"}, "dragdropway": {"version": "1.1.0"}, "formviewer": {"version": "1.1.0"} }; global.define = __define; return module.exports; }); $__System.register('5', ['4'], function (_export) { 'use strict'; var easyFormConfig, EASY_FORM_DD_VERSION_NAME, EASY_FORM_DD_VERSION_VALUE; function dragDropConfigFunct(easyFormDragWayConfigProvider) { easyFormDragWayConfigProvider.setItemsNotTocount({ //placeholder : '', itemBeingDragged: 'dndDraggingSource' }); } return { setters: [function (_) { easyFormConfig = _['default']; }], execute: function () { EASY_FORM_DD_VERSION_NAME = 'easyFormGenVersion'; EASY_FORM_DD_VERSION_VALUE = easyFormConfig.dragdropway.version; dragDropConfigFunct.$inject = ['easyFormDragWayConfigProvider']; _export('default', dragDropConfigFunct); _export('EASY_FORM_DD_VERSION_NAME', EASY_FORM_DD_VERSION_NAME); _export('EASY_FORM_DD_VERSION_VALUE', EASY_FORM_DD_VERSION_VALUE); } }; }); $__System.register('6', [], function (_export) { 'use strict'; var CORE_MODULES; return { setters: [], execute: function () { CORE_MODULES = ['textAngular', 'textAngularSetup', 'ngAnimate', 'toaster', 'formly', 'formlyBootstrap', 'ui.bootstrap', 'nya.bootstrap.select', 'mgcrea.ngStrap.affix' // 'pascalprecht.translate' ]; _export('default', angular.module('easyFormGen.dragDropWay.core', CORE_MODULES)); } }; }); $__System.register('7', [], function (_export) { 'use strict'; var dateFormats, setToday, clearDateTime; return { setters: [], execute: function () { dateFormats = ['dd-MMMM-yyyy', 'yyyy/MM/dd', 'dd.MM.yyyy', 'shortDate']; setToday = function setToday(datetimePickerModel) { datetimePickerModel.dt = new Date(); }; clearDateTime = function clearDateTime(datetimePickerModel) { datetimePickerModel.dt = new Date(); }; _export('dateFormats', dateFormats); _export('setToday', setToday); _export('clearDateTime', clearDateTime); } }; }); $__System.register('8', ['7', '9', 'a'], function (_export) { var dateFormats, setToday, clearDateTime, _createClass, _classCallCheck, LEFT_PANEL_CONTROLLER, LEFT_PANEL_CONTROLLERAS, leftPanelController; return { setters: [function (_2) { dateFormats = _2.dateFormats; setToday = _2.setToday; clearDateTime = _2.clearDateTime; }, function (_) { _createClass = _['default']; }, function (_a) { _classCallCheck = _a['default']; }], execute: function () { 'use strict'; LEFT_PANEL_CONTROLLER = 'leftPanelController'; LEFT_PANEL_CONTROLLERAS = 'leftPanelCtrl'; leftPanelController = (function () { function leftPanelController(toaster, $timeout, $selectOptionMange, controllerModalProxy) { _classCallCheck(this, leftPanelController); this.toaster = toaster; this.$timeout = $timeout; this.$selectOptionMange = $selectOptionMange; this.controllerModalProxy = controllerModalProxy; this.init(); } _createClass(leftPanelController, [{ key: 'init', value: function init() { this.proxyModel = this.controllerModalProxy.proxyModel; this.proxyModel.selectedControl = this.proxyModel.temporyConfig.selectedControl; this.basicSelectRowCollection = this.controllerModalProxy.basicSelectRowCollection; this.newOptionBasicSelect = this.controllerModalProxy.newOptionBasicSelect; this.groupedSelectRowCollection = this.controllerModalProxy.groupedSelectRowCollection; this.newOptionGroupedSelect = this.controllerModalProxy.newOptionGroupedSelect; this.GroupedSelectGroups = this.controllerModalProxy.GroupedSelectGroups; this.newGroupGroupedSelect = this.controllerModalProxy.newGroupGroupedSelect; this.groupSelectGroupClick = this.controllerModalProxy.groupSelectGroupClick; this.radioRowCollection = this.controllerModalProxy.radioRowCollection; this.newOptionRadio = this.controllerModalProxy.newOptionRadio; this.demodt = {}; this.demodt.formats = dateFormats; this.dateOptions = this.getDateOptions(); // this.controllerModalProxy.resetAllTemporyModels(); this.initNyaSelectConformingSelectedControl(); } }, { key: 'getDateOptions', value: function getDateOptions() { var dateOptions = { formatYear: 'yy', startingDay: 1, showWeeks: true, initDate: null }; return dateOptions; } }, { key: 'initNyaSelectConformingSelectedControl', value: function initNyaSelectConformingSelectedControl() { //place proxyModel to selection if not none : if (this.proxyModel.temporyConfig.selectedControl !== 'none') { for (var i = this.proxyModel.controls.length - 1; i >= 0; i--) { if (this.proxyModel.controls[i].id === this.proxyModel.temporyConfig.selectedControl) this.modelproxyModel = this.proxyModel.controls[i]; } if (this.proxyModel.temporyConfig.selectedControl === 'BasicSelect') this.controllerModalProxy.bindBasicSelectFromProxyModel(self.basicSelectRowCollection); if (this.proxyModel.temporyConfig.selectedControl === 'GroupedSelect') this.controllerModalProxy.bindGroupedSelectFromProxyModel(this.groupedSelectRowCollection, this.GroupedSelectGroups); if (this.proxyModel.temporyConfig.selectedControl === 'Radio') this.controllerModalProxy.bindRadioFromProxyModel(this.radioRowCollection); } } }, { key: 'updateSpecialControl', value: function updateSpecialControl() { //refresh service data for particular controls as selects and radio this.proxyModel.basicSelectRowCollection = this.basicSelectRowCollection; this.proxyModel.newOptionBasicSelect = this.newOptionBasicSelect; this.proxyModel.groupedSelectRowCollection = this.groupedSelectRowCollection; this.proxyModel.newOptionGroupedSelect = this.newOptionGroupedSelect; this.proxyModel.GroupedSelectGroups = this.GroupedSelectGroups; this.proxyModel.newGroupGroupedSelect = this.newGroupGroupedSelect; this.proxyModel.groupSelectGroupClick = this.groupSelectGroupClick; this.proxyModel.radioRowCollection = this.radioRowCollection; this.proxyModel.newOptionRadio = this.newOptionRadio; //force apply update proxyModel this.controllerModalProxy.bindSpecialCtrlTemporyModelsToProxyModel(); return true; } }, { key: 'resetTemporyConfig', value: function resetTemporyConfig() { this.proxyModel.temporyConfig = { formlyLabel: '', formlyRequired: false, formlyPlaceholder: '', formlyDesciption: '', formlyOptions: [] }; } }, { key: 'resetControl', value: function resetControl() { this.proxyModel.temporyConfig.formlyLabel = ''; this.proxyModel.temporyConfig.formlyRequired = false; this.proxyModel.temporyConfig.formlyPlaceholder = ''; this.proxyModel.temporyConfig.formlyDesciption = ''; this.proxyModel.temporyConfig.formlyOptions = []; this.proxyModel.temporyConfig.datepickerPopup = this.initDatePicker(); } }, { key: 'initDatePicker', value: function initDatePicker() { this.proxyModel.temporyConfig.datepickerPopup = this.demodt.formats[0]; } }, { key: 'selectThisControl', value: function selectThisControl(controlName) { this.proxyModel.selectedControl = 'none'; this.resetTemporyConfig(); for (var i = this.proxyModel.controls.length - 1; i >= 0; i--) { if (this.proxyModel.controls[i].id === controlName) { this.proxyModel.selectedControl = this.proxyModel.controls[i].id; } } if (this.proxyModel.selectedControl === 'Date') this.initDatePicker(); } /** * ============================================================== * specific controls management * (display, properties.... : ex : grouped Select) * ============================================================== */ }, { key: 'addNewOptionRadio', value: function addNewOptionRadio() { var result = this.$selectOptionMange.addNewOptionRadio(this.radioRowCollection, this.newOptionRadio.saisie); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: '\'' + this.newOptionRadio.saisie + '\' cannot be added.', showCloseButton: true }); } //reset input this.newOptionRadio = { saisie: '' }; } }, { key: 'removeRadioRow', value: function removeRadioRow(index) { var result = this.$selectOptionMange.removeOption(this.radioRowCollection, index); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: 'Delete was cancelled.', showCloseButton: true }); } } }, { key: 'upThisRadioRow', value: function upThisRadioRow(index) { var result = this.$selectOptionMange.upthisOption(this.radioRowCollection, index); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: 'Operation cancelled.', showCloseButton: true }); } } }, { key: 'downThisRadioRow', value: function downThisRadioRow(index) { var result = this.$selectOptionMange.downthisOption(this.radioRowCollection, index); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: 'Operation cancelled.', showCloseButton: true }); } } }, { key: 'addNewOptionBasicSelect', value: function addNewOptionBasicSelect() { var result = this.$selectOptionMange.addNewOptionBasicSelect(this.basicSelectRowCollection, this.newOptionBasicSelect.saisie); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: '\'' + this.newOptionBasicSelect.saisie + '\' cannot be added.', showCloseButton: true }); } this.newOptionBasicSelect = { saisie: '' }; //reset input } }, { key: 'removeRow', value: function removeRow(index) { var result = this.$selectOptionMange.removeOption(this.basicSelectRowCollection, index); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: 'Delete was cancelled.', showCloseButton: true }); } } }, { key: 'upThisRow', value: function upThisRow(index) { var result = this.$selectOptionMange.upthisOption(this.basicSelectRowCollection, index); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: 'Operation cancelled.', showCloseButton: true }); } } }, { key: 'downThisRow', value: function downThisRow(index) { var result = this.$selectOptionMange.downthisOption(this.basicSelectRowCollection, index); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: 'Operation cancelled.', showCloseButton: true }); } } }, { key: 'showGroupListToChoose', value: function showGroupListToChoose() { this.groupSelectGroupClick.showList = !this.groupSelectGroupClick.showList; } }, { key: 'addNewGroupToGroupedSelect', value: function addNewGroupToGroupedSelect() { if (this.newGroupGroupedSelect.saisie !== '') { for (var i = this.GroupedSelectGroups.list.length - 1; i >= 0; i--) { if (this.GroupedSelectGroups.list[i] === this.newGroupGroupedSelect.saisie) { this.toaster.pop({ type: 'warning', timeout: 2000, title: 'Group already exists', body: 'No group added.', showCloseButton: true }); } } this.GroupedSelectGroups.list.push(this.newGroupGroupedSelect.saisie); } else { this.toaster.pop({ type: 'warning', timeout: 2000, title: 'Not a valid group to add', body: 'No group added.', showCloseButton: true }); } this.newGroupGroupedSelect.saisie = ''; } }, { key: 'addNewOptionGroupedSelect', value: function addNewOptionGroupedSelect() { var result = this.$selectOptionMange.addNewOptionGroupedSelect(this.groupedSelectRowCollection, this.newOptionGroupedSelect.saisie, ''); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: '\'' + this.newOptionGroupedSelect.saisie + '\' cannot be added.', showCloseButton: true }); } //bind nya : dont bind here $apply is not done fast enough //bindGroupedSelectToNya(); //reset input this.newOptionGroupedSelect = { saisie: '' }; } }, { key: 'removeGroupedSelectRow', value: function removeGroupedSelectRow(index) { var result = this.$selectOptionMange.removeOption(this.groupedSelectRowCollection, index); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: 'Delete was cancelled.', showCloseButton: true }); } } }, { key: 'upThisGroupedSelectRow', value: function upThisGroupedSelectRow(index) { var result = this.$selectOptionMange.upthisOption(this.groupedSelectRowCollection, index); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: 'Operation cancelled.', showCloseButton: true }); } } }, { key: 'downThisGroupedSelectRow', value: function downThisGroupedSelectRow(index) { var result = this.$selectOptionMange.downthisOption(this.groupedSelectRowCollection, index); if (result.resultFlag === false) { this.toaster.pop({ type: 'warning', timeout: 2000, title: result.details, body: 'Operation cancelled.', showCloseButton: true }); } } }, { key: 'today', value: function today() { setToday(this.demodt); } }, { key: 'clear', value: function clear() { clearDateTime(this.demodt); } }, { key: 'open', value: function open($event) { $event.preventDefault(); $event.stopPropagation(); this.demodt.opened = true; } }]); return leftPanelController; })(); leftPanelController.$inject = ['toaster', '$timeout', '$selectOptionMange', 'controllerModalProxy']; _export('default', leftPanelController); _export('LEFT_PANEL_CONTROLLER', LEFT_PANEL_CONTROLLER); _export('LEFT_PANEL_CONTROLLERAS', LEFT_PANEL_CONTROLLERAS); } }; }); $__System.registerDynamic("b", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n\t
\n\t\t\n\t\t\t\n ×\n \n\t\t\n\t
\n\t
\n\t
\n\t\t
\n\t\t\t
\n\t\t\t\t
\n\t\t\t\t\t
\n \n  \n Select a control\n
\n\t\t\t\t
\n\t\t\t
\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t\t
\n\t\t\t\n\t\t
\n\t
\n\t\n Close\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('c', ['8', 'b'], function (_export) { 'use strict'; var LEFT_PANEL_CONTROLLER, LEFT_PANEL_CONTROLLERAS, leftPanelTemplate, LEFT_PANEL_DIRECTIVE; function leftPanel() { var directive = { restrict: 'E', template: leftPanelTemplate, scope: {}, controller: LEFT_PANEL_CONTROLLER, controllerAs: LEFT_PANEL_CONTROLLERAS, bindToController: { closeEditPanel: '&', selectedControl: '&', saveFromEditPanel: '&' } }; return directive; } return { setters: [function (_) { LEFT_PANEL_CONTROLLER = _.LEFT_PANEL_CONTROLLER; LEFT_PANEL_CONTROLLERAS = _.LEFT_PANEL_CONTROLLERAS; }, function (_b) { leftPanelTemplate = _b['default']; }], execute: function () { LEFT_PANEL_DIRECTIVE = 'leftPanel'; leftPanel.$inject = []; _export('default', leftPanel); _export('LEFT_PANEL_DIRECTIVE', LEFT_PANEL_DIRECTIVE); } }; }); $__System.register('d', [], function (_export) { /* global angular */ 'use strict'; var resetModel, validOption; return { setters: [], execute: function () { resetModel = function resetModel(selectObj) { var zeroModel = { rows: [] }; angular.copy(zeroModel, selectObj); }; validOption = function validOption(selectObj, newOptionText) { var fullResponse = { resultFlag: false, details: '' }; if (typeof newOptionText === 'undefined') { fullResponse.resultFlag = false; fullResponse.details = 'Entered option is empty'; return fullResponse; } if (newOptionText !== '') { for (var i = selectObj.rows.length - 1; i >= 0; i--) { if (selectObj.rows[i].option === newOptionText) { fullResponse.resultFlag = false; fullResponse.details = 'Entered option is not unique'; return fullResponse; } } fullResponse.resultFlag = true; fullResponse.details = ''; return fullResponse; } fullResponse.resultFlag = false; fullResponse.details = 'Entered option is empty'; return fullResponse; }; _export('resetModel', resetModel); _export('validOption', validOption); } }; }); $__System.register('e', ['9', 'a', 'd'], function (_export) { var _createClass, _classCallCheck, helpers, LEFT_PANEL_SELECT_OPTION_MANAGE_SERVICE, selectOptionMange; return { setters: [function (_) { _createClass = _['default']; }, function (_a) { _classCallCheck = _a['default']; }, function (_d) { helpers = _d; }], execute: function () { /* global angular */ 'use strict'; LEFT_PANEL_SELECT_OPTION_MANAGE_SERVICE = '$selectOptionMange'; selectOptionMange = (function () { function selectOptionMange() { _classCallCheck(this, selectOptionMange); this.init(); } _createClass(selectOptionMange, [{ key: 'init', value: function init() {} }, { key: 'initModel', value: function initModel(selectObj) { helpers.resetModel(selectObj); } }, { key: 'isOptionUnique', value: function isOptionUnique(selectObj, textValue) { for (var i = selectObj.rows.length - 1; i >= 0; i--) { if (selectObj.rows[i].option === textValue) return false; } return true; } }, { key: 'isOptionValidFormat', value: function isOptionValidFormat(textValue) { if (textValue !== '') return true; return false; } }, { key: 'addNewOptionRadio', value: function addNewOptionRadio(selectObj, newOptionText) { var fullResponse = { resultFlag: false, details: '' }; var checkResult = helpers.validOption(selectObj, newOptionText); if (checkResult.resultFlag === true) { var newOption = { option: newOptionText, order: selectObj.rows.length }; selectObj.rows.push(newOption); fullResponse.resultFlag = true; fullResponse.details = ''; return fullResponse; } else { angular.copy(checkResult, fullResponse); return fullResponse; } } }, { key: 'addNewOptionBasicSelect', value: function addNewOptionBasicSelect(selectObj, newOptionText) { var fullResponse = { resultFlag: false, details: '' }; var checkResult = helpers.validOption(selectObj, newOptionText); if (checkResult.resultFlag === true) { var newOption = { option: newOptionText, order: selectObj.rows.length }; selectObj.rows.push(newOption); fullResponse.resultFlag = true; fullResponse.details = ''; return fullResponse; } else { angular.copy(checkResult, fullResponse); return fullResponse; } } }, { key: 'addNewOptionGroupedSelect', value: function addNewOptionGroupedSelect(selectObj, newOptionText, newOptionGroup) { var fullResponse = { resultFlag: false, details: '' }; var checkResult = helpers.validOption(selectObj, newOptionText); if (checkResult.resultFlag === true) { var newOption = { option: newOptionText, group: newOptionGroup, order: selectObj.rows.length }; selectObj.rows.push(newOption); fullResponse.resultFlag = true; fullResponse.details = ''; return fullResponse; } else { angular.copy(checkResult, fullResponse); return fullResponse; } } }, { key: 'removeOption', value: function removeOption(selectObj, AtIndex) { var fullResponse = { resultFlag: false, details: '' }; if (AtIndex !== -1) { selectObj.rows.splice(AtIndex, 1); fullResponse.resultFlag = true; fullResponse.details = ''; return fullResponse; } else { fullResponse.resultFlag = false; fullResponse.details = 'Option index not valid'; return fullResponse; } } }, { key: 'upthisOption', value: function upthisOption(selectObj, indexOption) { var fullResponse = { resultFlag: false, details: '' }; if (indexOption > -1) { if (indexOption > 0) { if (selectObj.rows[indexOption - 1]) { var currentOption = selectObj.rows[indexOption]; selectObj.rows.splice(indexOption, 1); selectObj.rows.splice(indexOption - 1, 0, currentOption); fullResponse.resultFlag = true; fullResponse.details = ''; return fullResponse; } else { fullResponse.resultFlag = false; fullResponse.details = 'Can\'t retreive option from option index'; return fullResponse; } } else { fullResponse.resultFlag = true; fullResponse.details = ''; return fullResponse; } } else { fullResponse.resultFlag = false; fullResponse.details = 'Option index not valid'; return fullResponse; } } }, { key: 'downthisOption', value: function downthisOption(selectObj, indexOption) { var fullResponse = { resultFlag: false, details: '' }; if (indexOption > -1) { if (indexOption < selectObj.rows.length - 1) { if (selectObj.rows[indexOption + 1]) { var currentOption = selectObj.rows[indexOption]; selectObj.rows.splice(indexOption, 1); selectObj.rows.splice(indexOption + 1, 0, currentOption); fullResponse.resultFlag = true; fullResponse.details = ''; return fullResponse; } else { fullResponse.resultFlag = false; fullResponse.details = 'Can\'t retreive option from option index'; return fullResponse; } } else { fullResponse.resultFlag = true; fullResponse.details = ''; return fullResponse; } } else { fullResponse.resultFlag = false; fullResponse.details = 'Option index not valid'; return fullResponse; } } }]); return selectOptionMange; })(); selectOptionMange.$inject = []; _export('default', selectOptionMange); _export('LEFT_PANEL_SELECT_OPTION_MANAGE_SERVICE', LEFT_PANEL_SELECT_OPTION_MANAGE_SERVICE); } }; }); $__System.register('f', ['9', 'a'], function (_export) { var _createClass, _classCallCheck, CONTROLLER_MODAL_PROXY, INIT_OPTION_MODEL, controllerModalProxy; return { setters: [function (_2) { _createClass = _2['default']; }, function (_a) { _classCallCheck = _a['default']; }], execute: function () { /// /// /** * TODO : * - clean deprecated functions * - method 'resetAllTemporyModels' -> remove no use angular.copy to optimize */ 'use strict'; CONTROLLER_MODAL_PROXY = 'controllerModalProxy'; INIT_OPTION_MODEL = { rows: [] }; controllerModalProxy = (function () { function controllerModalProxy(EasyFormGenFormlyBindingModels) { _classCallCheck(this, controllerModalProxy); this.EasyFormGenFormlyBindingModels = EasyFormGenFormlyBindingModels; this.init(); } _createClass(controllerModalProxy, [{ key: 'init', value: function init() { this.proxyModel = {}; this.resetProxyModel(); this.editPanelModel = { toggle: false, lineIndex: -1, columnIndex: -1, control: {} }; this.basicSelectRowCollection = angular.copy(INIT_OPTION_MODEL); this.newOptionBasicSelect = angular.copy({ saisie: '' }); this.groupedSelectRowCollection = angular.copy(INIT_OPTION_MODEL); this.newOptionGroupedSelect = angular.copy({ saisie: '' }); this.GroupedSelectGroups = angular.copy({ list: [] }); this.newGroupGroupedSelect = angular.copy({ saisie: '' }); this.groupSelectGroupClick = angular.copy({ showList: false }); this.radioRowCollection = angular.copy(INIT_OPTION_MODEL); this.newOptionRadio = angular.copy({ saisie: '' }); } // deprecated in drag and drop version, use initProxyModel insead }, { key: 'initNyaSelect', value: function initNyaSelect(nyaSelectObj) { return this.resetNyaSelect(nyaSelectObj); } }, { key: 'initProxyModel', value: function initProxyModel(thisProxyModelToInit) { return this.resetProxyModel(thisProxyModelToInit); } // deprecated : in drag and drop version, use "resetProxyModel()"" }, { key: 'resetNyaSelect', value: function resetNyaSelect(nyaSelectObj) { var newNyaSelectObj = this.EasyFormGenFormlyBindingModels.getEasyFormListControls(); angular.copy(newNyaSelectObj, nyaSelectObj); return true; } }, { key: 'resetProxyModel', value: function resetProxyModel() { var newProxyModel = this.EasyFormGenFormlyBindingModels.getEasyFormListControls(); this.proxyModel = angular.copy(newProxyModel); return true; } }, { key: 'returnControlFromAddCtrlModalModel', value: function returnControlFromAddCtrlModalModel(CtrlModalModel) { var modelToReturn = { selectedControl: 'none', formlyType: 'none', formlySubtype: 'none', formlyLabel: '', formlyRequired: false, formlyDesciption: '', formlyPlaceholder: '', formlyOptions: [] }; for (var i = CtrlModalModel.controls.length - 1; i >= 0; i--) { if (CtrlModalModel.selectedControl === CtrlModalModel.controls[i].id) { modelToReturn.selectedControl = CtrlModalModel.selectedControl; modelToReturn.formlyType = CtrlModalModel.controls[i].formlyType; modelToReturn.formlySubtype = CtrlModalModel.controls[i].formlySubtype; modelToReturn.formlyLabel = CtrlModalModel.controls[i].formlyLabel; modelToReturn.formlyRequired = CtrlModalModel.controls[i].formlyRequired; modelToReturn.formlyDesciption = CtrlModalModel.controls[i].formlyDesciption; modelToReturn.formlyPlaceholder = CtrlModalModel.controls[i].formlyPlaceholder; modelToReturn.formlyOptions = CtrlModalModel.controls[i].formlyOptions; // particular properties, here ; datetpicker format if (CtrlModalModel.controls[i].formlyType === 'datepicker') modelToReturn.datepickerPopup = CtrlModalModel.controls[i].datepickerPopup; } } return modelToReturn; } }, { key: 'validKeyUniqueness', value: function validKeyUniqueness(thisKey, configurationObj) { var isUnique = true; for (var i = configurationObj.lines.length - 1; i >= 0; i--) { for (var j = configurationObj.lines[i].columns.length - 1; j >= 0; j--) { if (configurationObj.lines[i].columns[j].control.key === thisKey) { isUnique = false; } } } return isUnique; } }, { key: 'getSelectedProxyModel', value: function getSelectedProxyModel(configurationSelectedCtrl) { var selectedProxyModelControl = 'none'; var listProxyModelCTRL = angular.copy(this.EasyFormGenFormlyBindingModels.getEasyFormListControls().controls); listProxyModelCTRL.forEach(function (control) { if (control.formlyType === configurationSelectedCtrl.type && control.formlySubtype === configurationSelectedCtrl.subtype) { selectedProxyModelControl = control.id; return selectedProxyModelControl; } }); return selectedProxyModelControl; } // to refresh configuration model from edit panel }, { key: 'bindConfigurationModelFromProxyModel', value: function bindConfigurationModelFromProxyModel(indexLine, numcolumn, configurationObj) { var extractedProps = angular.copy(this.proxyModel.temporyConfig); configurationObj.lines[indexLine].columns[numcolumn].control.selectedControl = extractedProps.selectedControl; configurationObj.lines[indexLine].columns[numcolumn].control.type = extractedProps.formlyType; configurationObj.lines[indexLine].columns[numcolumn].control.subtype = extractedProps.formlySubtype; // templateOptions configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions = { label: '', required: false, description: '', placeholder: '', options: [] }; // then bind template option configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.label = extractedProps.formlyLabel; configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.required = extractedProps.formlyRequired; configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.description = extractedProps.formlyDesciption; configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.placeholder = extractedProps.formlyPlaceholder; configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.options = extractedProps.formlyOptions; // add additionnal — particular — properties : -> datepicker : datepickerPopup if (configurationObj.lines[indexLine].columns[numcolumn].control.type === 'datepicker') { configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.datepickerPopup = extractedProps.datepickerPopup; } // unique key (set only first time) in this model is formly control type + Date.now(); var newKey = configurationObj.lines[indexLine].columns[numcolumn].control.type + '-' + Date.now(); if (this.validKeyUniqueness(newKey, configurationObj) === true) { configurationObj.lines[indexLine].columns[numcolumn].control.key = newKey; } else { newKey = configurationObj.lines[indexLine].columns[numcolumn].control.type + '-' + Date.now(); if (this.validKeyUniqueness(newKey, configurationObj) === true) { configurationObj.lines[indexLine].columns[numcolumn].control.key = newKey; } else { newKey = configurationObj.lines[indexLine].columns[numcolumn].control.type + '-' + Date.now(); } } configurationObj.lines[indexLine].columns[numcolumn].control.edited = true; } /** * set local proxyModel from Selected control in configuration model * * replace deprecated "getNyASelectFromSelectedLineColumn" * -model is now named "proxyModel" * -model is stored in this service * * -> it has just more sence! */ }, { key: 'setProxyModelFromConfigurationSelection', value: function setProxyModelFromConfigurationSelection(configurationObj, indexLine, numcolumn) { // data send to modal controller if (typeof configurationObj.lines[indexLine].columns[numcolumn].control != 'undefined') { // determine selected control from indexes and control.type and control.subtype in configuration model this.proxyModel.selectedControl = typeof configurationObj.lines[indexLine].columns[numcolumn].control.type != 'undefined' ? this.getSelectedProxyModel(configurationObj.lines[indexLine].columns[numcolumn].control) : 'none'; this.proxyModel.temporyConfig.selectedControl = typeof configurationObj.lines[indexLine].columns[numcolumn].control.type != 'undefined' ? this.getSelectedProxyModel(configurationObj.lines[indexLine].columns[numcolumn].control) : 'none'; this.proxyModel.temporyConfig.formlyType = typeof configurationObj.lines[indexLine].columns[numcolumn].control.type != 'undefined' ? configurationObj.lines[indexLine].columns[numcolumn].control.type : 'none'; this.proxyModel.temporyConfig.formlySubtype = typeof configurationObj.lines[indexLine].columns[numcolumn].control.subtype != 'undefined' ? configurationObj.lines[indexLine].columns[numcolumn].control.subtype : 'none'; this.proxyModel.temporyConfig.formlyLabel = typeof configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.label != 'undefined' ? configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.label : ''; this.proxyModel.temporyConfig.formlyRequired = typeof configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.required != 'undefined' ? configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.required : ''; this.proxyModel.temporyConfig.formlyDesciption = typeof configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.description != 'undefined' ? configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.description : ''; this.proxyModel.temporyConfig.formlyPlaceholder = typeof configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.placeholder != 'undefined' ? configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.placeholder : ''; this.proxyModel.temporyConfig.formlyOptions = typeof configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.options != 'undefined' ? configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.options : ''; // particular case : datepicker if (this.proxyModel.temporyConfig.selectedControl === 'Date') { this.proxyModel.temporyConfig.datepickerPopup = typeof configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.datepickerPopup != 'undefined' ? configurationObj.lines[indexLine].columns[numcolumn].control.templateOptions.datepickerPopup : ''; } // console.info('debug setProxyModelFromConfigurationSelection'); // console.dir({ // selectedControl : angular.copy(this.proxyModel.selectedControl ), // temporyConfig : angular.copy(this.proxyModel.temporyConfig) // }); } return this.proxyModel; } }, { key: 'getProxyModel', value: function getProxyModel() { return this.proxyModel; } /** * ============================================================ * following methods for "editPanelModel" * * Note this model : * - to manage side edit control panel * ============================================================ */ // getter : editPanelModel (whole model => type = object) }, { key: 'getEditPanelModelAllModel', value: function getEditPanelModelAllModel() { return this.editPanelModel; } // setter : editPanelModel (whole model => type = object) }, { key: 'setEditPanelModelControl', value: function setEditPanelModelControl(newEditPanelModel) { var successfullDone = false; if (typeof newEditPanelModel !== 'undefined') { angular.merge(this.editPanelModel, newEditPanelModel); successfullDone = true; } return successfullDone; } // getter : editPanelModel.columnIndex }, { key: 'getEditPanelModelColumnIndex', value: function getEditPanelModelColumnIndex() { return this.editPanelModel.columnIndex; } // setter : editPanelModel.columnIndex }, { key: 'setEditPanelModelColumnIndex', value: function setEditPanelModelColumnIndex(newColumnIndex) { var successfullDone = false; if (typeof newColumnIndex !== 'undefined') { this.editPanelModel.columnIndex = newColumnIndex; successfullDone = true; } return successfullDone; } // getter : editPanelModel.lineIndex }, { key: 'getEditPanelModelLineIndex', value: function getEditPanelModelLineIndex() { return this.editPanelModel.lineIndex; } // setter : editPanelModel.lineIndex }, { key: 'setEditPanelModelLineIndex', value: function setEditPanelModelLineIndex(newLineIndex) { var successfullDone = false; if (typeof newLineIndex !== 'undefined') { this.editPanelModel.lineIndex = newLineIndex; successfullDone = true; } return successfullDone; } // getter : editPanelModel.control }, { key: 'getEditPanelModelControl', value: function getEditPanelModelControl() { return this.editPanelModel.control; } // getter : editPanelModel.toggle }, { key: 'getEditPanelModelToggle', value: function getEditPanelModelToggle() { return this.editPanelModel.toggle; } // setter : editPanelModel.toggle }, { key: 'setEditPanelModelToggle', value: function setEditPanelModelToggle(newToggleValue) { var successfullDone = false; if (typeof newToggleValue !== 'undefined') { this.editPanelModel.toggle = newToggleValue; successfullDone = true; } return successfullDone; } }, { key: 'resetAllTemporyModels', value: function resetAllTemporyModels() { this.basicSelectRowCollection = angular.copy(INIT_OPTION_MODEL); this.newOptionBasicSelect = angular.copy({ saisie: '' }); this.groupedSelectRowCollection = angular.copy(INIT_OPTION_MODEL); this.newOptionGroupedSelect = angular.copy({ saisie: '' }); this.GroupedSelectGroups = angular.copy({ list: [] }); this.newGroupGroupedSelect = angular.copy({ saisie: '' }); this.groupSelectGroupClick = angular.copy({ showList: false }); this.radioRowCollection = angular.copy(INIT_OPTION_MODEL); this.newOptionRadio = angular.copy({ saisie: '' }); return true; } /** * bindSpecialCtrlTemporyModelsToProxyModel: needed when validating after editing a control * tempory models applied to proxyModel if control is one of these * * example : if selected control is a basic select options * -> so its tempory models are bound to proxyModel */ }, { key: 'bindSpecialCtrlTemporyModelsToProxyModel', value: function bindSpecialCtrlTemporyModelsToProxyModel() { if (this.proxyModel.selectedControl === 'BasicSelect') { this.bindBasicSelectToProxyModel(this.basicSelectRowCollection); } if (this.proxyModel.selectedControl === 'GroupedSelect') { this.bindGroupedSelectToProxyModel(this.groupedSelectRowCollection); } if (this.proxyModel.selectedControl === 'Radio') { this.bindRadioToProxyModel(this.radioRowCollection); } } // basic select }, { key: 'bindBasicSelectFromProxyModel', value: function bindBasicSelectFromProxyModel(basicSelectRowCollection) { if (this.proxyModel.temporyConfig.formlyOptions.length > 0) { for (var i = 0; i <= this.proxyModel.temporyConfig.formlyOptions.length - 1; i++) { var newOption = { 'option': this.proxyModel.temporyConfig.formlyOptions[i].name, 'order': i, 'group': '' }; basicSelectRowCollection.rows.push(newOption); } } } }, { key: 'bindBasicSelectToProxyModel', value: function bindBasicSelectToProxyModel(basicSelectRowCollection) { var resetNyASelectOptions = []; this.proxyModel.temporyConfig.formlyOptions = resetNyASelectOptions; if (basicSelectRowCollection.rows.length > 0) { for (var i = 0; i <= basicSelectRowCollection.rows.length - 1; i++) { var newOption = { 'name': basicSelectRowCollection.rows[i].option, 'value': i, 'group': '' }; this.proxyModel.temporyConfig.formlyOptions.push(newOption); } } } //* grouped select }, { key: 'bindGroupedSelectFromProxyModel', value: function bindGroupedSelectFromProxyModel(groupedSelectRowCollection, GroupedSelectGroups) { if (this.proxyModel.temporyConfig.formlyOptions.length > 0) { for (var i = 0; i <= this.proxyModel.temporyConfig.formlyOptions.length - 1; i++) { var newOption = { 'option': this.proxyModel.temporyConfig.formlyOptions[i].name, 'order': i, 'group': this.proxyModel.temporyConfig.formlyOptions[i].group }; groupedSelectRowCollection.rows.push(newOption); } //grouplist : thx to lodash it is easy var filteredgroup = _.uniq(_.pluck(groupedSelectRowCollection.rows, 'group')); angular.copy(filteredgroup, GroupedSelectGroups.list); } } }, { key: 'bindGroupedSelectToProxyModel', value: function bindGroupedSelectToProxyModel(groupedSelectRowCollection) { this.proxyModel.temporyConfig.formlyOptions = []; for (var i = 0; i <= groupedSelectRowCollection.rows.length - 1; i++) { var newOption = { 'name': groupedSelectRowCollection.rows[i].option, 'value': i, 'group': groupedSelectRowCollection.rows[i].group }; this.proxyModel.temporyConfig.formlyOptions.push(newOption); } } // radio }, { key: 'bindRadioFromProxyModel', value: function bindRadioFromProxyModel(radioRowCollection) { if (this.proxyModel.temporyConfig.formlyOptions.length > 0) { for (var i = 0; i <= this.proxyModel.temporyConfig.formlyOptions.length - 1; i++) { var newOption = { 'option': this.proxyModel.temporyConfig.formlyOptions[i].name, 'order': i, 'group': '' }; radioRowCollection.rows.push(newOption); } } } }, { key: 'bindRadioToProxyModel', value: function bindRadioToProxyModel(radioRowCollection) { var resetproxyModelOptions = []; this.proxyModel.temporyConfig.formlyOptions = resetproxyModelOptions; if (radioRowCollection.rows.length > 0) { for (var i = 0; i <= radioRowCollection.rows.length - 1; i++) { var newOption = { 'name': radioRowCollection.rows[i].option, 'value': i, 'group': '' }; this.proxyModel.temporyConfig.formlyOptions.push(newOption); } } } }]); return controllerModalProxy; })(); controllerModalProxy.$inject = ['EasyFormGenFormlyBindingModels']; _export('default', controllerModalProxy); _export('CONTROLLER_MODAL_PROXY', CONTROLLER_MODAL_PROXY); } }; }); $__System.registerDynamic("10", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n \n \n  \n Reset\n \n \n \n  \n Save\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('11', ['10'], function (_export) { 'use strict'; var leftPanelValidEditFooterTemplate, LEFT_PANEL_VALID_EDIT_FOOTER_DIRECTIVE; function leftPanelValidEditFooter() { var directive = { restrict: 'E', template: leftPanelValidEditFooterTemplate }; return directive; } return { setters: [function (_) { leftPanelValidEditFooterTemplate = _['default']; }], execute: function () { LEFT_PANEL_VALID_EDIT_FOOTER_DIRECTIVE = 'leftPanelValidEditFooter'; leftPanelValidEditFooter.$inject = []; _export('default', leftPanelValidEditFooter); _export('LEFT_PANEL_VALID_EDIT_FOOTER_DIRECTIVE', LEFT_PANEL_VALID_EDIT_FOOTER_DIRECTIVE); } }; }); $__System.registerDynamic("12", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n  \n Edit properties :\n
\n
\n
\n
\n
\n
\n
\n \n Label text :\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n placeholder :\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n Required :\n \n
\n
 
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n Description :\n \n
\n \n
\n
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('13', ['12'], function (_export) { 'use strict'; var leftPanelTextInputControlTemplate, LEFT_PANEL_TEXT_INPUT_CONTROL_DIRECTIVE; function leftPanelTextInputControl() { var directive = { restrict: 'E', template: leftPanelTextInputControlTemplate }; return directive; } return { setters: [function (_) { leftPanelTextInputControlTemplate = _['default']; }], execute: function () { LEFT_PANEL_TEXT_INPUT_CONTROL_DIRECTIVE = 'leftPanelTextInputControl'; leftPanelTextInputControl.$inject = []; _export('default', leftPanelTextInputControl); _export('LEFT_PANEL_TEXT_INPUT_CONTROL_DIRECTIVE', LEFT_PANEL_TEXT_INPUT_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("14", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n  \n Edit properties :\n
\n
\n
\n
\n
\n
\n
\n \n Label text :\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n Required :\n \n
\n
\n  \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n Description :\n \n
\n \n
\n
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('15', ['14'], function (_export) { 'use strict'; var leftPanelTextareaControlTemplate, LEFT_PANEL_TEXTAREA_CONTROL_DIRECTIVE; function leftPanelTextareaControl() { var directive = { restrict: 'E', template: leftPanelTextareaControlTemplate }; return directive; } return { setters: [function (_) { leftPanelTextareaControlTemplate = _['default']; }], execute: function () { LEFT_PANEL_TEXTAREA_CONTROL_DIRECTIVE = 'leftPanelTextareaControl'; leftPanelTextareaControl.$inject = []; _export('default', leftPanelTextareaControl); _export('LEFT_PANEL_TEXTAREA_CONTROL_DIRECTIVE', LEFT_PANEL_TEXTAREA_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("16", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n  \n Edit properties :\n
\n
\n
\n
\n
\n
\n
\n \n Subtitle text :\n \n
\n \n
\n
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('17', ['16'], function (_export) { 'use strict'; var leftPanelSubtitleControlTemplate, LEFT_PANEL_SUBTITLE_CONTROL_DIRECTIVE; function leftPanelSubtitleControl() { var directive = { restrict: 'E', template: leftPanelSubtitleControlTemplate }; return directive; } return { setters: [function (_) { leftPanelSubtitleControlTemplate = _['default']; }], execute: function () { LEFT_PANEL_SUBTITLE_CONTROL_DIRECTIVE = 'leftPanelSubtitleControl'; leftPanelSubtitleControl.$inject = []; _export('default', leftPanelSubtitleControl); _export('LEFT_PANEL_SUBTITLE_CONTROL_DIRECTIVE', LEFT_PANEL_SUBTITLE_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("18", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n   Edit properties :\n
\n
\n
\n
\n
\n
\n
\n \n Description :\n \n
\n \n
\n
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('19', ['18'], function (_export) { 'use strict'; var leftPanelRichTextEditorControlTemplate, LEFT_PANEL_RICH_TEXT_EDITOR_CONTROL_DIRECTIVE; function leftPanelRichTextEditorControl() { var directive = { restrict: 'E', template: leftPanelRichTextEditorControlTemplate }; return directive; } return { setters: [function (_) { leftPanelRichTextEditorControlTemplate = _['default']; }], execute: function () { LEFT_PANEL_RICH_TEXT_EDITOR_CONTROL_DIRECTIVE = 'leftPanelRichTextEditorControl'; leftPanelRichTextEditorControl.$inject = []; _export('default', leftPanelRichTextEditorControl); _export('LEFT_PANEL_RICH_TEXT_EDITOR_CONTROL_DIRECTIVE', LEFT_PANEL_RICH_TEXT_EDITOR_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("1a", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n  \n Edit properties :\n
\n
\n
\n
\n
\n
\n \n Add new radio :\n \n
\n
\n
\n
\n
\n
\n \n
\n
\n \n add\n \n
\n
\n
\n
\n
\n
\n \n Edit/Remove radio :\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n - no radio : add new radio values -\n \n
\n
\n 0\"\n class=\"table table-striped\">\n \n \n \n order\n \n \n option\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{$index}}\n \n \n {{radioRow.option}}\n \n \n
\n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n \t\t\t
\n \n Label text :\n \n
\n \n
\n \t\t\t
\n
\n
\n
\n
\n
\n \t\t\t
\n \n Required :\n \n
\n
 
\n \n
\n \t\t\t
\n
\n
\n
\n
\n
\n \t\t\t
\n \n Description :\n \n
\n \n
\n \t\t\t
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('1b', ['1a'], function (_export) { 'use strict'; var leftPanelRadioControlTemplate, LEFT_PANEL_RADIO_CONTROL_DIRECTIVE; function leftPanelRadioControl() { var directive = { restrict: 'E', template: leftPanelRadioControlTemplate }; return directive; } return { setters: [function (_a) { leftPanelRadioControlTemplate = _a['default']; }], execute: function () { LEFT_PANEL_RADIO_CONTROL_DIRECTIVE = 'leftPanelRadioControl'; leftPanelRadioControl.$inject = []; _export('default', leftPanelRadioControl); _export('LEFT_PANEL_RADIO_CONTROL_DIRECTIVE', LEFT_PANEL_RADIO_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("1c", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n  \n Edit properties :\n
\n
\n
\n
\n
\n
\n
\n \n Label text :\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n placeholder :\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n Required :\n \n
\n
 
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n Description :\n \n
\n \n
\n
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('1d', ['1c'], function (_export) { 'use strict'; var leftPanelPasswordControlTemplate, LEFT_PANEL_PASSWORD_CONTROL_DIRECTIVE; function leftPanelPasswordControl() { var directive = { restrict: 'E', template: leftPanelPasswordControlTemplate }; return directive; } return { setters: [function (_c) { leftPanelPasswordControlTemplate = _c['default']; }], execute: function () { LEFT_PANEL_PASSWORD_CONTROL_DIRECTIVE = 'leftPanelPasswordControl'; leftPanelPasswordControl.$inject = []; _export('default', leftPanelPasswordControl); _export('LEFT_PANEL_PASSWORD_CONTROL_DIRECTIVE', LEFT_PANEL_PASSWORD_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("1e", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n  \n Edit properties :\n
\n
\n
\n
\n
\n
\n
\n \n Header text :\n \n
\n \n
\n
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('1f', ['1e'], function (_export) { 'use strict'; var leftPanelHeaderControlTemplate, LEFT_PANEL_HEADER_CONTROL_DIRECTIVE; function leftPanelHeaderControl() { var directive = { restrict: 'E', template: leftPanelHeaderControlTemplate }; return directive; } return { setters: [function (_e) { leftPanelHeaderControlTemplate = _e['default']; }], execute: function () { LEFT_PANEL_HEADER_CONTROL_DIRECTIVE = 'leftPanelHeaderControl'; leftPanelHeaderControl.$inject = []; _export('default', leftPanelHeaderControl); _export('LEFT_PANEL_HEADER_CONTROL_DIRECTIVE', LEFT_PANEL_HEADER_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("20", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n  \n Edit properties :\n
\n
\n
\n
\n
\n
\n \n Add new options :\n \n
\n
\n
\n
\n
\n
\n \n
\n
\n \n add\n \n
\n
\n
\n
\n
\n
\n \n Add new groups :\n \n
\n
\n
\n
\n
\n
\n \n
\n
\n \n add\n \n
\n
\n
\n
\n
\n
\n \n Edit/Remove options/groups:\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n - no option : add new options -\n \n
\n
\n 0\"\n class=\"table table-striped\">\n \n \n \n order\n \n \n group\n \n \n option\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{$index}}\n \n \n
\n
\n

\n - add new groups -\n

\n
\n
0\">\n \n \n \n {{GroupedSelectGroup}}\n \n \n \n
\n
\n
\n {{groupedSelectRow.group}}\n
\n \n \n {{groupedSelectRow.option}}\n \n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n\t\t\t\t
\n \n Description :\n \n
\n \n
\n\t\t\t\t
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('21', ['20'], function (_export) { 'use strict'; var leftPanelGroupedSelectControlTemplate, LEFT_PANEL_GROUPED_SELECT_CONTROL_DIRECTIVE; function leftPanelGroupedSelectControl() { var directive = { restrict: 'E', template: leftPanelGroupedSelectControlTemplate }; return directive; } return { setters: [function (_) { leftPanelGroupedSelectControlTemplate = _['default']; }], execute: function () { LEFT_PANEL_GROUPED_SELECT_CONTROL_DIRECTIVE = 'leftPanelGroupedSelectControl'; leftPanelGroupedSelectControl.$inject = []; _export('default', leftPanelGroupedSelectControl); _export('LEFT_PANEL_GROUPED_SELECT_CONTROL_DIRECTIVE', LEFT_PANEL_GROUPED_SELECT_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("22", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n  \n Edit properties :\n
\n
\n
\n
\n \n
\n \n \n \n {{dateformat}}\n \n \n \n
\n
\n
\n
\n
\n \n Label text :\n \n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n Required :\n \n
\n
 
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n Description :\n \n
\n \n
\n
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('23', ['22'], function (_export) { 'use strict'; var leftPanelDateControlTemplate, LEFT_PANEL_DATE_CONTROL_DIRECTIVE; function leftPanelDateControl() { var directive = { restrict: 'E', template: leftPanelDateControlTemplate }; return directive; } return { setters: [function (_) { leftPanelDateControlTemplate = _['default']; }], execute: function () { LEFT_PANEL_DATE_CONTROL_DIRECTIVE = 'leftPanelDateControl'; leftPanelDateControl.$inject = []; _export('default', leftPanelDateControl); _export('LEFT_PANEL_DATE_CONTROL_DIRECTIVE', LEFT_PANEL_DATE_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("24", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n  \n Edit properties :\n
\n
\n
\n
\n
\n
\n \t\t\t
\n \n Label text :\n \n
\n \n
\n \t\t\t
\n
\n
\n
\n
\n
\n \t\t\t
\n \n Required :\n \n
\n
 
\n \n
\n \t\t\t
\n
\n
\n
\n
\n
\n \t\t\t
\n \n Description :\n \n
\n \n
\n \t\t\t
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('25', ['24'], function (_export) { 'use strict'; var leftPanelCheckBoxControlTemplate, LEFT_PANEL_CHECKBOX_CONTROL_DIRECTIVE; function leftPanelCheckBoxControl() { var directive = { restrict: 'E', template: leftPanelCheckBoxControlTemplate }; return directive; } return { setters: [function (_) { leftPanelCheckBoxControlTemplate = _['default']; }], execute: function () { LEFT_PANEL_CHECKBOX_CONTROL_DIRECTIVE = 'leftPanelCheckBoxControl'; leftPanelCheckBoxControl.$inject = []; _export('default', leftPanelCheckBoxControl); _export('LEFT_PANEL_CHECKBOX_CONTROL_DIRECTIVE', LEFT_PANEL_CHECKBOX_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("26", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n   \n Edit :\n
\n
\n
\n
\n
\n
\n Column will be blank\n
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('27', ['26'], function (_export) { 'use strict'; var leftPanelBlankControlTemplate, LEFT_PANEL_BLANK_CONTROL_DIRECTIVE; function leftPanelBlankControl() { var directive = { restrict: 'E', template: leftPanelBlankControlTemplate }; return directive; } return { setters: [function (_) { leftPanelBlankControlTemplate = _['default']; }], execute: function () { LEFT_PANEL_BLANK_CONTROL_DIRECTIVE = 'leftPanelBlankControl'; leftPanelBlankControl.$inject = []; _export('default', leftPanelBlankControl); _export('LEFT_PANEL_BLANK_CONTROL_DIRECTIVE', LEFT_PANEL_BLANK_CONTROL_DIRECTIVE); } }; }); $__System.registerDynamic("28", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n
\n \n  \n Edit properties :\n
\n
\n
\n
\n
\n
\n \n Add new options :\n \n
\n
\n
\n
\n
\n
\n \n
\n
\n \n add\n \n
\n
\n
\n
\n
\n
\n \n
\n
\n
\n
\n
\n
\n
\n
\n \n - no option : add new options -\n \n
\n
\n 0\"\n class=\"table table-striped\">\n \n \n \n order\n \n \n option\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {{$index}}\n \n \n {{basicSelectRow.option}}\n \n \n
\n \n \n \n \n \n \n \n \n \n
\n \n \n \n \n
\n
\n
\n
\n
\n
\n
\n \t
\n \n Description :\n \n
\n \n
\n \t
\n
\n
\n
\n \n
\n"; global.define = __define; return module.exports; }); $__System.register('29', ['28'], function (_export) { 'use strict'; var leftPanelBasicSelectControlTemplate, LEFT_PANEL_BASIC_SELECT_CONTROL_DIRECTIVE; function leftPanelBasicSelectControl() { var directive = { restrict: 'E', template: leftPanelBasicSelectControlTemplate }; return directive; } return { setters: [function (_) { leftPanelBasicSelectControlTemplate = _['default']; }], execute: function () { LEFT_PANEL_BASIC_SELECT_CONTROL_DIRECTIVE = 'leftPanelBasicSelectControl'; leftPanelBasicSelectControl.$inject = []; _export('default', leftPanelBasicSelectControl); _export('LEFT_PANEL_BASIC_SELECT_CONTROL_DIRECTIVE', LEFT_PANEL_BASIC_SELECT_CONTROL_DIRECTIVE); } }; }); $__System.register('2a', ['8', '11', '13', '15', '17', '19', '21', '23', '25', '27', '29', 'c', 'e', 'f', '1b', '1d', '1f'], function (_export) { /* global angular */ 'use strict'; var leftPanelController, LEFT_PANEL_CONTROLLER, leftPanelValidEditFooter, LEFT_PANEL_VALID_EDIT_FOOTER_DIRECTIVE, leftPanelTextInputControl, LEFT_PANEL_TEXT_INPUT_CONTROL_DIRECTIVE, leftPanelTextareaControl, LEFT_PANEL_TEXTAREA_CONTROL_DIRECTIVE, leftPanelSubtitleControl, LEFT_PANEL_SUBTITLE_CONTROL_DIRECTIVE, leftPanelRichTextEditorControl, LEFT_PANEL_RICH_TEXT_EDITOR_CONTROL_DIRECTIVE, leftPanelGroupedSelectControl, LEFT_PANEL_GROUPED_SELECT_CONTROL_DIRECTIVE, leftPanelDateControl, LEFT_PANEL_DATE_CONTROL_DIRECTIVE, leftPanelCheckBoxControl, LEFT_PANEL_CHECKBOX_CONTROL_DIRECTIVE, leftPanelBlankControl, LEFT_PANEL_BLANK_CONTROL_DIRECTIVE, leftPanelBasicSelectControl, LEFT_PANEL_BASIC_SELECT_CONTROL_DIRECTIVE, leftPanel, LEFT_PANEL_DIRECTIVE, selectOptionMange, LEFT_PANEL_SELECT_OPTION_MANAGE_SERVICE, controllerModalProxy, CONTROLLER_MODAL_PROXY, leftPanelRadioControl, LEFT_PANEL_RADIO_CONTROL_DIRECTIVE, leftPanelPasswordControl, LEFT_PANEL_PASSWORD_CONTROL_DIRECTIVE, leftPanelHeaderControl, LEFT_PANEL_HEADER_CONTROL_DIRECTIVE, LEFT_PANEL_MODULE; return { setters: [function (_) { leftPanelController = _['default']; LEFT_PANEL_CONTROLLER = _.LEFT_PANEL_CONTROLLER; }, function (_2) { leftPanelValidEditFooter = _2['default']; LEFT_PANEL_VALID_EDIT_FOOTER_DIRECTIVE = _2.LEFT_PANEL_VALID_EDIT_FOOTER_DIRECTIVE; }, function (_3) { leftPanelTextInputControl = _3['default']; LEFT_PANEL_TEXT_INPUT_CONTROL_DIRECTIVE = _3.LEFT_PANEL_TEXT_INPUT_CONTROL_DIRECTIVE; }, function (_4) { leftPanelTextareaControl = _4['default']; LEFT_PANEL_TEXTAREA_CONTROL_DIRECTIVE = _4.LEFT_PANEL_TEXTAREA_CONTROL_DIRECTIVE; }, function (_5) { leftPanelSubtitleControl = _5['default']; LEFT_PANEL_SUBTITLE_CONTROL_DIRECTIVE = _5.LEFT_PANEL_SUBTITLE_CONTROL_DIRECTIVE; }, function (_6) { leftPanelRichTextEditorControl = _6['default']; LEFT_PANEL_RICH_TEXT_EDITOR_CONTROL_DIRECTIVE = _6.LEFT_PANEL_RICH_TEXT_EDITOR_CONTROL_DIRECTIVE; }, function (_7) { leftPanelGroupedSelectControl = _7['default']; LEFT_PANEL_GROUPED_SELECT_CONTROL_DIRECTIVE = _7.LEFT_PANEL_GROUPED_SELECT_CONTROL_DIRECTIVE; }, function (_8) { leftPanelDateControl = _8['default']; LEFT_PANEL_DATE_CONTROL_DIRECTIVE = _8.LEFT_PANEL_DATE_CONTROL_DIRECTIVE; }, function (_9) { leftPanelCheckBoxControl = _9['default']; LEFT_PANEL_CHECKBOX_CONTROL_DIRECTIVE = _9.LEFT_PANEL_CHECKBOX_CONTROL_DIRECTIVE; }, function (_10) { leftPanelBlankControl = _10['default']; LEFT_PANEL_BLANK_CONTROL_DIRECTIVE = _10.LEFT_PANEL_BLANK_CONTROL_DIRECTIVE; }, function (_11) { leftPanelBasicSelectControl = _11['default']; LEFT_PANEL_BASIC_SELECT_CONTROL_DIRECTIVE = _11.LEFT_PANEL_BASIC_SELECT_CONTROL_DIRECTIVE; }, function (_c) { leftPanel = _c['default']; LEFT_PANEL_DIRECTIVE = _c.LEFT_PANEL_DIRECTIVE; }, function (_e) { selectOptionMange = _e['default']; LEFT_PANEL_SELECT_OPTION_MANAGE_SERVICE = _e.LEFT_PANEL_SELECT_OPTION_MANAGE_SERVICE; }, function (_f) { controllerModalProxy = _f['default']; CONTROLLER_MODAL_PROXY = _f.CONTROLLER_MODAL_PROXY; }, function (_b) { leftPanelRadioControl = _b['default']; LEFT_PANEL_RADIO_CONTROL_DIRECTIVE = _b.LEFT_PANEL_RADIO_CONTROL_DIRECTIVE; }, function (_d) { leftPanelPasswordControl = _d['default']; LEFT_PANEL_PASSWORD_CONTROL_DIRECTIVE = _d.LEFT_PANEL_PASSWORD_CONTROL_DIRECTIVE; }, function (_f2) { leftPanelHeaderControl = _f2['default']; LEFT_PANEL_HEADER_CONTROL_DIRECTIVE = _f2.LEFT_PANEL_HEADER_CONTROL_DIRECTIVE; }], execute: function () { LEFT_PANEL_MODULE = 'edaDragDropWay.leftPanel.module'; _export('default', angular.module(LEFT_PANEL_MODULE, []).directive(LEFT_PANEL_DIRECTIVE, leftPanel).controller(LEFT_PANEL_CONTROLLER, leftPanelController).service(LEFT_PANEL_SELECT_OPTION_MANAGE_SERVICE, selectOptionMange).service(CONTROLLER_MODAL_PROXY, controllerModalProxy).directive(LEFT_PANEL_VALID_EDIT_FOOTER_DIRECTIVE, leftPanelValidEditFooter).directive(LEFT_PANEL_TEXT_INPUT_CONTROL_DIRECTIVE, leftPanelTextInputControl).directive(LEFT_PANEL_TEXTAREA_CONTROL_DIRECTIVE, leftPanelTextareaControl).directive(LEFT_PANEL_SUBTITLE_CONTROL_DIRECTIVE, leftPanelSubtitleControl).directive(LEFT_PANEL_RICH_TEXT_EDITOR_CONTROL_DIRECTIVE, leftPanelRichTextEditorControl).directive(LEFT_PANEL_RADIO_CONTROL_DIRECTIVE, leftPanelRadioControl).directive(LEFT_PANEL_PASSWORD_CONTROL_DIRECTIVE, leftPanelPasswordControl).directive(LEFT_PANEL_HEADER_CONTROL_DIRECTIVE, leftPanelHeaderControl).directive(LEFT_PANEL_GROUPED_SELECT_CONTROL_DIRECTIVE, leftPanelGroupedSelectControl).directive(LEFT_PANEL_DATE_CONTROL_DIRECTIVE, leftPanelDateControl).directive(LEFT_PANEL_CHECKBOX_CONTROL_DIRECTIVE, leftPanelCheckBoxControl).directive(LEFT_PANEL_BLANK_CONTROL_DIRECTIVE, leftPanelBlankControl).directive(LEFT_PANEL_BASIC_SELECT_CONTROL_DIRECTIVE, leftPanelBasicSelectControl)); } }; }); $__System.register('2b', ['9', 'a'], function (_export) { var _createClass, _classCallCheck, FORM_FIELD_MANAGE_SERVICE, formFieldManage; return { setters: [function (_) { _createClass = _['default']; }, function (_a) { _classCallCheck = _a['default']; }], execute: function () { 'use strict'; FORM_FIELD_MANAGE_SERVICE = 'formFieldManage'; formFieldManage = (function () { function formFieldManage(EasyFormGenFormlyBindingModels) { _classCallCheck(this, formFieldManage); this.EasyFormGenFormlyBindingModels = EasyFormGenFormlyBindingModels; this.init(); } _createClass(formFieldManage, [{ key: 'init', value: function init() {} /** * At initial state : configuration model will contain 1 line, since : * -> it is non sense to create a form without a single line (no line = no form at all) * -> so it is non sense to force user to add a first line * * PLEASE NOTE columns array contains objects that look like formly fields one */ }, { key: 'initConfigurationEditFromScratch', value: function initConfigurationEditFromScratch(configurationModel, addStepWayProperties) { var configurationModelInit = this.EasyFormGenFormlyBindingModels.getEasyFormInitialStateConfigurationModel(addStepWayProperties); angular.copy(configurationModelInit, configurationModel); } /** * Get an configuration empty (no init line) then empty it with lines array provided in param * @param object - configurationModel [configuration model] * @param array - lines [an array : lines to apply to an empty configuration model] * @param bool - addStepWayProperties [description] * @return {object message} [give details on how it happened to caller] */ }, { key: 'bindConfigurationLines', value: function bindConfigurationLines(configurationModel, lines, addStepWayProperties) { if (Object.prototype.toString.call(lines) === '[object Array]') { var configurationModelResult = this.EasyFormGenFormlyBindingModels.getEasyFormReloadConfigurationModel(addStepWayProperties); configurationModelResult.lines = [].concat(lines); angular.copy(configurationModelResult, configurationModel); return this.getMessageObject('configuration model is bound', 'lines are bound to configuration model.'); } else { return this.getErrorObject('lines is not an array', 'Checks lines type, it is not an array.'); } } /** * applyConfigurationToformlyModel : * - bind configuration model into formly field model * - reset dataModel (formlyfield may have changed so previous dataModel would be false) * @param configurationModel * @param formlyModel * @param formlyDataModel */ }, { key: 'applyConfigurationToformlyModel', value: function applyConfigurationToformlyModel(configurationModel, formlyModel, formlyDataModel) { this.resetFormlyModel(formlyModel); this.resetDataModel(formlyDataModel); var lineNumber = configurationModel.lines.length; for (var i = 0; i < lineNumber; i++) { this.AddNColumnControl(formlyModel, configurationModel, i); } } }, { key: 'resetFormlyModel', value: function resetFormlyModel(formlyModel) { var resetformly = []; angular.copy(resetformly, formlyModel); } }, { key: 'AddNColumnControl', value: function AddNColumnControl(formlyModel, configurationModel, lineIndex) { var _this = this; var numberOfColumns = configurationModel.lines[lineIndex].columns.length; /** * push formly model * here : only className and empty fieldGroup (controls != header) * if header will be reset to set a template (at least we have now indexFormlyModel) */ var rawFormlyModel = { className: 'row', fieldGroup: [] }; //get index formlyModel for this line : var indexFormlyModel = formlyModel.push(rawFormlyModel) - 1; // iterates through controls in the line configurationModel.lines[lineIndex].columns.forEach(function (column) { var controlTemplate = {}; if (typeof controlTemplate !== 'undefined' && // column.control.type !== 'header' && // column.control.type !== 'subTitle' && column.control.type !== 'none') { /** * controls : getFormlyControlTemplateForNcolumnLine() * * @PARAM numberOfColumns : integer to deduce cssClss to apply * @PARAM column.control.type : to add if needed specific properties (example : datepicker) */ if (column.control.type === 'header' || column.control.type === 'subTitle') { var headerTextContent = column.control.templateOptions.description; controlTemplate.template = _this.EasyFormGenFormlyBindingModels.getHeaderTemplateForNcolumnLine(numberOfColumns, headerTextContent).template; controlTemplate.className = _this.EasyFormGenFormlyBindingModels.getRawHeaderTemplates().selectedClass; } else { controlTemplate = _this.EasyFormGenFormlyBindingModels.getFormlyControlTemplateForNcolumnLine(numberOfColumns, column.control.type); /** * NEED REFACTOR HERE * should bind properties dynamically * * TODO need to validate all controls (datepicker may not work) * need to refactor */ controlTemplate.className = column.control.className; controlTemplate.type = column.control.type; controlTemplate.key = column.control.key; controlTemplate.templateOptions.type = column.control.templateOptions.type; controlTemplate.templateOptions.label = column.control.templateOptions.label; controlTemplate.templateOptions.required = column.control.templateOptions.required; controlTemplate.templateOptions.placeholder = column.control.templateOptions.placeholder; controlTemplate.templateOptions.description = column.control.templateOptions.description; controlTemplate.templateOptions.options = [].concat(column.control.templateOptions.options); if (typeof controlTemplate.templateOptions.datepickerPopup !== 'undefined') column.control.templateOptions.datepickerPopup = controlTemplate.templateOptions.datepickerPopup; } /** * popuplate properties */ /** * push control into formly model in its group */ /** * need to catch this random error */ formlyModel[indexFormlyModel].fieldGroup.push(controlTemplate); } }); } }, { key: 'isTemplateOptionDefined', value: function isTemplateOptionDefined(obj) { return typeof obj.templateOptions !== 'undefined' ? true : false; } }, { key: 'extractTemplateOptionLabel', value: function extractTemplateOptionLabel(obj) { return typeof obj.templateOptions !== 'undefined' ? typeof obj.templateOptions.label !== 'undefined' ? obj.templateOptions.label : '' : ''; } }, { key: 'extractTemplateOptionDatepickerPopup', value: function extractTemplateOptionDatepickerPopup(obj) { return typeof obj.templateOptions !== 'undefined' ? typeof obj.templateOptions.datepickerPopup !== 'undefined' ? obj.templateOptions.datepickerPopup : '' : ''; } }, { key: 'extractTemplateOptionRequired', value: function extractTemplateOptionRequired(obj) { return typeof obj.templateOptions !== 'undefined' ? typeof obj.templateOptions.required !== 'undefined' ? obj.templateOptions.required : '' : ''; } //radio and select }, { key: 'extractTemplateOptionOptions', value: function extractTemplateOptionOptions(obj) { return typeof obj.templateOptions !== 'undefined' ? typeof obj.templateOptions.options !== 'undefined' ? obj.templateOptions.options : '' : ''; } }, { key: 'extractTemplateOptionType', value: function extractTemplateOptionType(obj) { return typeof obj.subtype !== 'undefined' ? obj.subtype : ''; } }, { key: 'extractTemplateOptionPlaceholder', value: function extractTemplateOptionPlaceholder(obj) { return typeof obj.templateOptions !== 'undefined' ? typeof obj.templateOptions.placeholder !== 'undefined' ? obj.templateOptions.placeholder : '' : ''; } }, { key: 'extractTemplateOptionDescription', value: function extractTemplateOptionDescription(obj) { return typeof obj.templateOptions !== 'undefined' ? typeof obj.templateOptions.description !== 'undefined' ? obj.templateOptions.description : '' : ''; } // formly model functions }, { key: 'resetDataModel', value: function resetDataModel(obj) { var emptyDataModel = {}; angular.copy(emptyDataModel, obj); return true; } // custom errors }, { key: 'getErrorObject', value: function getErrorObject(errorTitle, errorMessage) { var messageObj = { noError: false, title: '', Message: '' }; messageObj.noError = false; messageObj.title = errorTitle; messageObj.Message = errorMessage; return messageObj; } }, { key: 'getMessageObject', value: function getMessageObject(messageTitle, messageBody) { var messageObj = { noError: false, title: '', Message: '' }; messageObj.noError = true; messageObj.title = messageTitle; messageObj.Message = messageBody; return messageObj; } }]); return formFieldManage; })(); formFieldManage.$inject = ['EasyFormGenFormlyBindingModels']; _export('default', formFieldManage); _export('FORM_FIELD_MANAGE_SERVICE', FORM_FIELD_MANAGE_SERVICE); } }; }); $__System.register('2c', [], function (_export) { 'use strict'; var initEasyFormListControls, initEasyFormEmptyConfigurationLineModel, initEmptyControlFieldModel, initEasyFormInitialStateConfigurationModel, initEasyFormInitialStateConfigurationModelAddOnForStepWay, initEasyFormReloadConfigurationModel, initHeaderTemplates, initFormlyControlTemplates, initParticularControlProperties; return { setters: [], execute: function () { initEasyFormListControls = function initEasyFormListControls() { return { controls: [], selectedControl: 'none', temporyConfig: { selectedControl: 'none', formlyLabel: 'label', formlyRequired: false, formlyDesciption: '', formlyPlaceholder: '', formlyOptions: [] } }; }; _export('initEasyFormListControls', initEasyFormListControls); initEasyFormEmptyConfigurationLineModel = function initEasyFormEmptyConfigurationLineModel() { return { line: 1, activeColumn: 1, columns: [{ numColumn: 1, exist: true, control: { type: 'none', key: 'none' } }] }; }; _export('initEasyFormEmptyConfigurationLineModel', initEasyFormEmptyConfigurationLineModel); initEmptyControlFieldModel = function initEmptyControlFieldModel() { return { 'control': { 'type': 'none', 'key': 'none' } }; }; _export('initEmptyControlFieldModel', initEmptyControlFieldModel); initEasyFormInitialStateConfigurationModel = function initEasyFormInitialStateConfigurationModel(_easyFormEmptyConfigurationLineModel) { // commun all easy form generator ways return { submitButtonText: 'submit', cancelButtonText: 'cancel', lines: [].concat(_easyFormEmptyConfigurationLineModel) }; }; _export('initEasyFormInitialStateConfigurationModel', initEasyFormInitialStateConfigurationModel); initEasyFormInitialStateConfigurationModelAddOnForStepWay = function initEasyFormInitialStateConfigurationModelAddOnForStepWay() { // specific easy form generator — step way — (not drag and drop way), needed for wizard management return { activeLine: 1, listConfigStep: ['init', 'first', 'second', 'third'], stepIndicators: [true, false, false, false], configStepCounter: 0 }; }; _export('initEasyFormInitialStateConfigurationModelAddOnForStepWay', initEasyFormInitialStateConfigurationModelAddOnForStepWay); initEasyFormReloadConfigurationModel = function initEasyFormReloadConfigurationModel() { var reloadConfigModel = initEasyFormInitialStateConfigurationModel(); reloadConfigModel.lines = []; return reloadConfigModel; }; _export('initEasyFormReloadConfigurationModel', initEasyFormReloadConfigurationModel); // can't use arrow function here -> 'this' would be bound to caller rather than expected current returned object... initHeaderTemplates = function initHeaderTemplates() { var headerTemplate = { cssClass: ['col-xs-12', 'col-xs-6', 'col-xs-4'], textContent: '', html_part1: ['
', '

'].join(''), html_part3: this.textContent, html_part4: ['

', '
', '

'].join(''), simpleHtml1: ['

'].join(''), simpleHtml2: ['

', '
'].join('') }; return headerTemplate; }; _export('initHeaderTemplates', initHeaderTemplates); initFormlyControlTemplates = function initFormlyControlTemplates() { return { className: ['col-xs-12', 'col-xs-6', 'col-xs-4'], type: '', key: '', templateOptions: { type: '', label: '', required: '', placeholder: '', description: '', options: '' } }; }; _export('initFormlyControlTemplates', initFormlyControlTemplates); initParticularControlProperties = function initParticularControlProperties() { return [{ controlType: 'datepicker', properties: [{ isRoot: false, isTemplateOptions: true, value: 'datepickerPopup' }] }]; }; _export('initParticularControlProperties', initParticularControlProperties); } }; }); $__System.register('2d', ['2c'], function (_export) { 'use strict'; var helpers, EASY_FORM_FORMLY_BINDING_MODEL_PROVIDER; function EasyFormGenFormlyBindingModels() { var _easyFormListControls = helpers.initEasyFormListControls(); var _easyFormEmptyConfigurationLineModel = helpers.initEasyFormEmptyConfigurationLineModel(); var _emptyControlFieldModel = helpers.initEmptyControlFieldModel(); var _easyFormInitialStateConfigurationModel = helpers.initEasyFormInitialStateConfigurationModel(_easyFormEmptyConfigurationLineModel); var _easyFormInitialStateConfigurationModelAddOnForStepWay = helpers.initEasyFormInitialStateConfigurationModelAddOnForStepWay(); var _easyFormReloadConfigurationModel = helpers.initEasyFormReloadConfigurationModel(); var _headerTemplates = helpers.initHeaderTemplates(); var _formlyControlTemplates = helpers.initFormlyControlTemplates(); var _particularControlProperties = helpers.initParticularControlProperties(); this.getAllParticularControlProperties = getAllParticularControlProperties; this.addParticularControlProperties = addParticularControlProperties; this.getEasyFormListControls = getEasyFormListControls; this.addEasyFormControlToList = addEasyFormControlToList; this.getHeaderTemplates = getHeaderTemplates; this.addHeaderTemplateCssClass = addHeaderTemplateCssClass; this.getFormlyControlTemplate = getFormlyControlTemplate; this.addformlyControlTemplatesCssClass = addformlyControlTemplatesCssClass; this.setFormlyControlTemplate = setFormlyControlTemplate; this.$get = getFct; function getAllParticularControlProperties() { return _particularControlProperties; } function addParticularControlProperties(newParticularControlProperty) { // test object param has waited properties if ('controlType' in newParticularControlProperty && 'properties' in newParticularControlProperty) { var isAnUpdate = false; if (_particularControlProperties.length > 0) { _particularControlProperties.forEach(function (controlProp) { if (controlProp.controlType === newParticularControlProperty.controlType) { controlProp.properties = [].concat(newParticularControlProperty.properties); isAnUpdate = true; } }); } if (!isAnUpdate) { _particularControlProperties.push(newParticularControlProperty); } } return _particularControlProperties; } function getEasyFormListControls() { return _easyFormListControls; } function addEasyFormControlToList(controlDeclaration) { if (typeof controlDeclaration !== 'undefined') { _easyFormListControls.controls.push(controlDeclaration); } } function getHeaderTemplates() { return _headerTemplates; } function addHeaderTemplateCssClass(cssClassToAdd) { if (typeof cssClassToAdd !== 'undefined') { _headerTemplates.cssClass.push(cssClassToAdd); } } function getFormlyControlTemplate() { return _formlyControlTemplates; } function addformlyControlTemplatesCssClass(cssClassToAdd) { if (typeof cssClassToAdd !== 'undefined') { _formlyControlTemplates.className.push(cssClassToAdd); } } function setFormlyControlTemplate(newFormlyControlTemplate) { if ('className' in newFormlyControlTemplate && 'type' in newFormlyControlTemplate && 'key' in newFormlyControlTemplate && 'templateOptions' in newFormlyControlTemplate) { _formlyControlTemplates = angular.copy(newFormlyControlTemplate); } return true; } getFct.$inject = []; function getFct() { var service = { getEasyFormListControls: getEasyFormListControlsFct, getEasyFormInitialStateConfigurationModel: getEasyFormInitialStateConfigurationModel, getEasyFormReloadConfigurationModel: getEasyFormReloadConfigurationModel, getEasyFormEmptyConfigurationLineModel: getEasyFormEmptyConfigurationLineModel, getEasyFormConfigurationEmptyControlModel: getEasyFormConfigurationEmptyControlModel, getRawHeaderTemplates: getRawHeaderTemplates, getHeaderTemplateForNcolumnLine: getHeaderTemplateForNcolumnLine, getRawFormlyControlTemplates: getRawFormlyControlTemplates, getFormlyControlTemplateForNcolumnLine: getFormlyControlTemplateForNcolumnLine }; return service; function getEasyFormListControlsFct() { return _easyFormListControls; } function getEasyFormInitialStateConfigurationModel(addStepWayProperties) { var initialConfigurationModel = angular.copy(_easyFormInitialStateConfigurationModel); if (typeof addStepWayProperties !== 'undefined') { if (addStepWayProperties) { // add properties specific to step way angular.extend(initialConfigurationModel, _easyFormInitialStateConfigurationModelAddOnForStepWay); } } return initialConfigurationModel; } function getEasyFormReloadConfigurationModel(addStepWayProperties) { var initialConfigurationModel = angular.copy(_easyFormReloadConfigurationModel); if (typeof addStepWayProperties !== 'undefined') { if (addStepWayProperties) { // add properties specific to step way angular.extend(initialConfigurationModel, _easyFormInitialStateConfigurationModelAddOnForStepWay); } } return initialConfigurationModel; } function getEasyFormEmptyConfigurationLineModel() { return _easyFormEmptyConfigurationLineModel; } function getEasyFormConfigurationEmptyControlModel() { return _emptyControlFieldModel; } function getRawHeaderTemplates() { return _headerTemplates; } function getHeaderTemplateForNcolumnLine(nbColInLines, textContent) { if (typeof nbColInLines !== 'undefined' && typeof textContent !== 'undefined') { if (nbColInLines === parseInt(nbColInLines, 10)) { if (nbColInLines <= _headerTemplates.cssClass.length) { var headerToReturn = {}; headerToReturn.className = _headerTemplates.cssClass[nbColInLines - 1]; // header html property depends this property dont forget to set it before reading html property _headerTemplates.textContent = textContent; _headerTemplates.selectedClass = headerToReturn.className; headerToReturn.template = [_headerTemplates.simpleHtml1, textContent, _headerTemplates.simpleHtml2].join(''); return headerToReturn; } } } } function getRawFormlyControlTemplates() { return _formlyControlTemplates; } function getFormlyControlTemplateForNcolumnLine(nbColInLines, controlType) { if (typeof nbColInLines !== 'undefined') { if (nbColInLines === parseInt(nbColInLines, 10)) { if (nbColInLines <= _formlyControlTemplates.className.length) { var _ret = (function () { var controlToReturn = angular.copy(_formlyControlTemplates); controlToReturn.className = _formlyControlTemplates.className[nbColInLines - 1]; // throw `it should have a bug upper line`; /* eslint no-console:0 */ console.warn('it should have a bug upper line'); /** * check controlType: it may require another particular property */ if (typeof controlType !== 'undefined') { _particularControlProperties.forEach(function (controlProp) { if (controlProp.controlType === controlType) { /** * add all properties this controlType has * * NOTE : dot expression and bracket expression to access object property * http://www.ecma-international.org/ecma-262/5.1/#sec-11.2.1 */ controlProp.properties.forEach(function (aPropToAdd) { if (aPropToAdd.isRoot) controlToReturn[aPropToAdd.value] = ''; if (aPropToAdd.isTemplateOptions) controlToReturn.templateOptions[aPropToAdd.value] = ''; }); } }); } return { v: controlToReturn }; })(); if (typeof _ret === 'object') return _ret.v; } } } } } } return { setters: [function (_c) { helpers = _c; }], execute: function () { EASY_FORM_FORMLY_BINDING_MODEL_PROVIDER = 'EasyFormGenFormlyBindingModels'; EasyFormGenFormlyBindingModels.$inject = []; _export('default', EasyFormGenFormlyBindingModels); _export('EASY_FORM_FORMLY_BINDING_MODEL_PROVIDER', EASY_FORM_FORMLY_BINDING_MODEL_PROVIDER); } }; }); $__System.register('2e', ['2b', '2d'], function (_export) { 'use strict'; var formFieldManage, FORM_FIELD_MANAGE_SERVICE, EasyFormGenFormlyBindingModels, EASY_FORM_FORMLY_BINDING_MODEL_PROVIDER, FORMLY_PROXY_MODULE; return { setters: [function (_b) { formFieldManage = _b['default']; FORM_FIELD_MANAGE_SERVICE = _b.FORM_FIELD_MANAGE_SERVICE; }, function (_d) { EasyFormGenFormlyBindingModels = _d['default']; EASY_FORM_FORMLY_BINDING_MODEL_PROVIDER = _d.EASY_FORM_FORMLY_BINDING_MODEL_PROVIDER; }], execute: function () { FORMLY_PROXY_MODULE = ''; _export('default', angular.module(FORMLY_PROXY_MODULE, []).service(FORM_FIELD_MANAGE_SERVICE, formFieldManage).provider(EASY_FORM_FORMLY_BINDING_MODEL_PROVIDER, EasyFormGenFormlyBindingModels)); } }; }); $__System.register('2f', [], function (_export) { 'use strict'; var DD_CONTENT_COUNTER_DIRECTIVE; function ddContentCounter(dragDropItemCounterService, $timeout) { var directive = { restrict: 'A', scope: { valueWhenPlaceholder: '@ddValueWhenPlaceholder', valueWhendragging: '@ddValueWhenDragging', fullModel: '=ddFullModel', currentIndex: '@ddContentCounterCurrentIndex', parentIndex: '@ddContentCounterParentIndex', forceRefresh: '=ddContentCounterForceCssRefresh' }, link: linkfct }; return directive; function linkfct($scope, element) { var timer = undefined; // watch children length change : to update css item class $scope.$watch(function () { return element[0].children.length; }, function (newValue, oldValue) { if (newValue !== oldValue) { (function () { var newRealCount = 0; var listClassForThisRow = []; for (var i = element[0].children.length - 1; i >= 0; i--) { if (dragDropItemCounterService.isHtmlElementToCount(element[0].children[i].classList)) { newRealCount++; listClassForThisRow.push({ item: i, isReal: true }); } else { listClassForThisRow.push({ item: i, isReal: false }); } } $scope.contentRealCount = newRealCount; // a timer otherwise won't refresh everytime timer = $timeout(function () { dragDropItemCounterService.updateLineItemCss($scope.fullModel, listClassForThisRow, $scope.parentIndex, $scope.currentIndex, newRealCount); }, 20); })(); } }); $scope.$on('$destroy', function () { $timeout.cancel(timer); }); } } return { setters: [], execute: function () { DD_CONTENT_COUNTER_DIRECTIVE = 'ddContentCounter'; ddContentCounter.$inject = ['dragDropItemCounterService', '$timeout']; _export('default', ddContentCounter); _export('DD_CONTENT_COUNTER_DIRECTIVE', DD_CONTENT_COUNTER_DIRECTIVE); } }; }); $__System.register('30', ['9', 'a'], function (_export) { var _createClass, _classCallCheck, DRAG_DROP_ITEM_COUNTER_SERVICE, dragDropItemCounterService; return { setters: [function (_) { _createClass = _['default']; }, function (_a) { _classCallCheck = _a['default']; }], execute: function () { 'use strict'; DRAG_DROP_ITEM_COUNTER_SERVICE = 'dragDropItemCounterService'; dragDropItemCounterService = (function () { function dragDropItemCounterService(easyFormDragWayConfig) { _classCallCheck(this, dragDropItemCounterService); this.easyFormDragWayConfig = easyFormDragWayConfig; this.init(); } _createClass(dragDropItemCounterService, [{ key: 'init', value: function init() { this._modelItemRealCounter = []; this._itemsNotToCount = angular.copy(this.easyFormDragWayConfig.getItemsNotToCount()); } }, { key: 'getItemsNotToCount', value: function getItemsNotToCount() { return this._itemsNotToCount; } }, { key: 'getModelItemsRealCounter', value: function getModelItemsRealCounter() { return this._modelItemRealCounter; } }, { key: 'isHtmlElementToCount', value: function isHtmlElementToCount(htmlvalue) { var isToCount = true; if (htmlvalue.length > 0) { angular.forEach(this._itemsNotToCount, function (value) { for (var classes = htmlvalue.length - 1; classes >= 0; classes--) { if (htmlvalue[classes] === value) isToCount = isToCount && false; } }); } return isToCount; } }, { key: 'updateLineItemCss', value: function updateLineItemCss(fullModel, listCssToApply, columIndex, lineIndex, realCount) { if (typeof fullModel !== 'undefined' && typeof listCssToApply !== 'undefined' && typeof columIndex !== 'undefined' && typeof lineIndex !== 'undefined' && typeof realCount !== 'undefined') { for (var i = fullModel[columIndex][lineIndex].length - 1; i >= 0; i--) { for (var j = 0; j < listCssToApply.length; j++) { if (listCssToApply[j].item === i && listCssToApply[j].isReal === true) { fullModel[columIndex][lineIndex][i].cssClass = this.easyFormDragWayConfig.getItemCssDependingNumberItemsInRow(realCount); } } } return true; } } }]); return dragDropItemCounterService; })(); dragDropItemCounterService.$inject = ['easyFormDragWayConfig']; _export('default', dragDropItemCounterService); _export('DRAG_DROP_ITEM_COUNTER_SERVICE', DRAG_DROP_ITEM_COUNTER_SERVICE); } }; }); $__System.registerDynamic("31", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n \n \n  \n {{ddDecorContainerCtrl.currentTitle}}\n

\n
\n
\n
\n
\n"; global.define = __define; return module.exports; }); $__System.register('32', ['31', '33'], function (_export) { /* global angular */ 'use strict'; var ddDecorContainerTemplate, DD_DECOR_CONTAINER_CONTROLLER_NAME, DD_DECOR_CONTAINER_CONTROLLERAS_NAME, DD_DECOR_CONTAINER_DIRECTIVE; function ddDecorContainer() { var directive = { restrict: 'A', template: ddDecorContainerTemplate, scope: {}, controller: DD_DECOR_CONTAINER_CONTROLLER_NAME, controllerAs: DD_DECOR_CONTAINER_CONTROLLERAS_NAME, bindToController: { 'styleParam': '=ddContainerProperties', 'isStillCollapsed': '=ddContainerIsCollpased', 'verboseMode': '@ddContainerVerboseMode', 'currentIndex': '@ddContainerCurrentIndex', 'collpaseAll': '&ddCollapseAll' }, transclude: true, link: linkFct }; return directive; function linkFct($scope, element, attrs, ctrl, transclude) { var verboseModeActive = $scope.ddDecorContainerCtrl.verboseMode; var currentIndex = $scope.ddDecorContainerCtrl.currentIndex; $scope.ddDecorContainerCtrl.isCollapsed = false; $scope.ddDecorContainerCtrl.config.isEnabled = false; /** * forceCollapse when : * dragDropConfigModel.containerConfig.decoration.isCollapsed changed (here bound to $scope.isStillCollapsed) */ $scope.$watch(function () { return $scope.ddDecorContainerCtrl.isStillCollapsed; }, function (newVal, oldVal) { if (newVal !== oldVal) { if ($scope.$parent.$parent.$index === 0) $scope.ddDecorContainerCtrl.isCollapsed = newVal; } }); /** * verbose mode for developments only */ if (verboseModeActive !== '') { var verbose = angular.lowercase(verboseModeActive); if (verbose === 'true' || verbose === '1') { /* eslint no-console:0 */ console.dir({ whoAmI: 'I am verbose from ddDecorContainer link', verbodeMode: verbose, ParentParentIndex: $scope.$parent.$parent.$index, ParentIndex: $scope.$parent.$index, currentIndex: currentIndex, styleParam: $scope.ddDecorContainerCtrl.styleParam, columnindex: $scope.$parent.$parent.$parent.$parent.$index }); } } /** * no header (no title, no collapse....) */ //$scope.ddDecorContainerCtrl.config.isEnabled if (typeof currentIndex !== 'undefined') { if (currentIndex !== '') { /** * specific 1st column */ if (currentIndex === '0') { /** * apply title */ if (typeof $scope.ddDecorContainerCtrl.styleParam.title !== 'undefined') { $scope.ddDecorContainerCtrl.currentTitle = $scope.ddDecorContainerCtrl.styleParam.title; $scope.ddDecorContainerCtrl.config.isEnabled = true; $scope.ddDecorContainerCtrl.isCollapsed = true; } } } } /** * prevent transclusion creating child scope * want to know more about what I'm talking about : check this nice tip on the subject : * http://angular-tips.com/blog/2014/03/transclusion-and-scopes/ */ transclude($scope.$parent, function (contentClone) { /** * transclusion will append content to '
' */ var childDiv = angular.element(element.children()[1]); childDiv.append(contentClone); }); } } return { setters: [function (_) { ddDecorContainerTemplate = _['default']; }, function (_2) { DD_DECOR_CONTAINER_CONTROLLER_NAME = _2.DD_DECOR_CONTAINER_CONTROLLER_NAME; DD_DECOR_CONTAINER_CONTROLLERAS_NAME = _2.DD_DECOR_CONTAINER_CONTROLLERAS_NAME; }], execute: function () { DD_DECOR_CONTAINER_DIRECTIVE = 'ddDecorContainer'; _export('default', ddDecorContainer); _export('DD_DECOR_CONTAINER_DIRECTIVE', DD_DECOR_CONTAINER_DIRECTIVE); } }; }); $__System.register('33', ['9', 'a'], function (_export) { var _createClass, _classCallCheck, DD_DECOR_CONTAINER_CONTROLLER_NAME, DD_DECOR_CONTAINER_CONTROLLERAS_NAME, ddDecorContainerController; return { setters: [function (_) { _createClass = _['default']; }, function (_a) { _classCallCheck = _a['default']; }], execute: function () { /* global angular */ 'use strict'; DD_DECOR_CONTAINER_CONTROLLER_NAME = 'ddDecorContainerController'; DD_DECOR_CONTAINER_CONTROLLERAS_NAME = 'ddDecorContainerCtrl'; ddDecorContainerController = (function () { function ddDecorContainerController() { _classCallCheck(this, ddDecorContainerController); this.init(); } _createClass(ddDecorContainerController, [{ key: 'init', value: function init() { this.config = angular.extend({}, { isEnabled: false }); /** * TODO (low priority) : make icon css configurable (provider) */ this.icons = angular.extend({}, { closedClass: 'glyphicon glyphicon-eye-open', opened: 'glyphicon glyphicon-eye-close' }); } }, { key: 'collapseFct', value: function collapseFct() { this.collpaseAll({ exceptThisOne: this.styleParam.WhenIndex }); //note : collpaseAll function is boundToController from directive attribute : 'collpaseAll' : '&ddCollapseAll' this.isCollapsed = !this.isCollapsed; this.isStillCollapsed = this.isCollapsed; //note : isStillCollapsed is boundToController from directive attribute : 'isStillCollapsed' : '=ddContainerIsCollpased', } }, { key: 'currentIconClass', value: function currentIconClass() { if (this.isCollapsed) { return this.icons.closedClass; } else { return this.icons.opened; } } }]); return ddDecorContainerController; })(); _export('default', ddDecorContainerController); _export('DD_DECOR_CONTAINER_CONTROLLER_NAME', DD_DECOR_CONTAINER_CONTROLLER_NAME); _export('DD_DECOR_CONTAINER_CONTROLLERAS_NAME', DD_DECOR_CONTAINER_CONTROLLERAS_NAME); } }; }); $__System.registerDynamic("34", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n
\n

\n  \n {{currentTitle}}\n
\n \n \n  \n add new line\n \n
\n

\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n"; global.define = __define; return module.exports; }); $__System.register('35', ['34'], function (_export) { /* global angular */ 'use strict'; var ddDecorDropZoneTemplate, DD_DECOR_DROPZONE_DIRECTIVE; function ddDecorDropZone() { var directive = { restrict: 'A', template: ddDecorDropZoneTemplate, scope: { 'styleParam': '=ddDropZoneProperties', 'verboseMode': '@ddDropZoneVerboseMode', 'currentIndex': '@ddDropZoneCurrentIndex', 'addNewLineFct': '&ddDropZoneAddNewLine' }, transclude: true, link: linkfct }; return directive; function linkfct($scope) { var verboseModeActive = $scope.verboseMode; var currentIndex = $scope.currentIndex; $scope.headerConfig = { HeaderButtonVisible: false, affixAttr: 'bs-affix', affixEnabled: false }; /** * verbose mode : just for dev */ if (verboseModeActive !== '') { var verbose = angular.lowercase(verboseModeActive); if (verbose === 'true' || verbose === '1') { /* eslint no-console:0 */ console.dir({ whoAmI: 'I am verbose from ddDecorDropZone link', verbodeMode: verbose, ParentParentIndex: $scope.$parent.$parent.$index, ParentIndex: $scope.$parent.$index, currentIndex: currentIndex, styleParam: $scope.styleParam }); } } if (typeof currentIndex !== 'undefined') { if (currentIndex !== '') { // apply title if (typeof $scope.styleParam.title !== 'undefined') $scope.currentTitle = $scope.styleParam.title; //apply font-awesome if (typeof $scope.styleParam.fontAwesomeIcon !== 'undefined') $scope.currentFontAwesome = $scope.styleParam.fontAwesomeIcon; //show add new line button if (currentIndex === '1') $scope.headerConfig.HeaderButtonVisible = true; } } } } return { setters: [function (_) { ddDecorDropZoneTemplate = _['default']; }], execute: function () { DD_DECOR_DROPZONE_DIRECTIVE = 'ddDecorDropZone'; ddDecorDropZone.$inject = []; _export('default', ddDecorDropZone); _export('DD_DECOR_DROPZONE_DIRECTIVE', DD_DECOR_DROPZONE_DIRECTIVE); } }; }); $__System.registerDynamic("36", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
\n
\n
\n"; global.define = __define; return module.exports; }); $__System.register('37', ['36'], function (_export) { 'use strict'; var dragdropItemTemplate, DRAG_DROP_DECOR_ITEM; function ddDecorItem(easyFormDragWayConfig) { var directive = { restrict: 'A', scope: { 'verboseMode': '@ddItemVerboseMode', 'currentIndex': '@ddItemCurrentIndex', 'parentIndex': '@ddItemParentIndex', 'parentParentIndex': '@ddItemParentParentIndex', 'lineItemsCount': '@ddItemsCount', 'cssClass': '@ddItemCssClass' }, template: dragdropItemTemplate, transclude: true, link: linkfct }; return directive; function linkfct($scope, element, attrs, ctrl, transclude) { var verboseModeActive = $scope.verboseMode; var currentIndex = $scope.currentIndex; var parentIndex = $scope.parentIndex; var listClass = easyFormDragWayConfig.getDistinctItemCssClass(); /** * init css class */ angular.forEach(listClass, function (css) { return element.removeClass(css); }); element.addClass($scope.cssClass); /** * update css class */ $scope.$watch('cssClass', function (newValue, oldValue) { if (newValue !== oldValue) { /** * update css class */ angular.forEach(listClass, function (css) { return element.removeClass(css); }); element.addClass(newValue); } }); /** * verbose mode : just for dev */ if (verboseModeActive !== '') { var verbose = angular.lowercase(verboseModeActive); if (verbose === 'true' || verbose === '1') { /* eslint no-console:0 */ console.dir({ whoAmI: 'I am verbose from ddDecorItem directive link', verbodeMode: verbose, ParentParentIndex: $scope.$parent.$parent.$index, ParentIndex: parentIndex, parentParentIndex: $scope.parentParentIndex, currentIndex: currentIndex, lineItemsCount: $scope.lineItemsCount }); } } /** * control column : apply css class to item */ if ($scope.parentParentIndex === '0') element.addClass(listClass[0]); /** * prevent transclusion creating child scope * * * NOTE :if you want to know more about what I'm saying : check this nice tip on the subject : * http://angular-tips.com/blog/2014/03/transclusion-and-scopes/ */ transclude($scope.$parent, function (contentClone) { /** * transclusion will append content to '
' */ var childDiv = angular.element(element.children()[0]); childDiv.append(contentClone); }); } } return { setters: [function (_) { dragdropItemTemplate = _['default']; }], execute: function () { DRAG_DROP_DECOR_ITEM = 'ddDecorItem'; ddDecorItem.$inject = ['easyFormDragWayConfig']; _export('default', ddDecorItem); _export('DRAG_DROP_DECOR_ITEM', DRAG_DROP_DECOR_ITEM); } }; }); $__System.register('38', ['9', 'a'], function (_export) { var _createClass, _classCallCheck, DRAG_DROP_ITEM_DECOR_SERVICE, dragDropItemDecorationService; return { setters: [function (_) { _createClass = _['default']; }, function (_a) { _classCallCheck = _a['default']; }], execute: function () { 'use strict'; DRAG_DROP_ITEM_DECOR_SERVICE = 'dragDropItemDecorationService'; dragDropItemDecorationService = (function () { function dragDropItemDecorationService(easyFormDragWayConfig) { _classCallCheck(this, dragDropItemDecorationService); this.easyFormDragWayConfig = easyFormDragWayConfig; this.init(); } _createClass(dragDropItemDecorationService, [{ key: 'init', value: function init() { this._listItemClass = [].concat(this.easyFormDragWayConfig.getListItemCssClass()); } }, { key: 'getListClass', value: function getListClass() { return this._listItemClass; } }, { key: 'getCssClassWhenNumberItemsInRowIs', value: function getCssClassWhenNumberItemsInRowIs(thisNumber) { return this.easyFormDragWayConfig.getItemCssDependingNumberItemsInRow(thisNumber); } }, { key: 'applyCssClassWholeLine', value: function applyCssClassWholeLine(model, indexColumn, indexLine, numberItems, restrictToThisIndexColumn) { if (typeof numberItems !== 'undefined' && typeof indexLine !== 'undefined' && typeof indexColumn !== 'undefined' && typeof model !== 'undefined' && typeof restrictToThisIndexColumn !== 'undefined') { if (indexColumn === restrictToThisIndexColumn) { for (var i = model[indexColumn][indexLine].length - 1; i >= 0; i--) { model[indexColumn][indexLine][i].cssClass = this.easyFormDragWayConfig.getItemCssDependingNumberItemsInRow(numberItems); } } return true; } else { return false; } } }, { key: 'updateCssClassWholeColumn', value: function updateCssClassWholeColumn(model, indexColumn) { if (typeof indexColumn !== 'undefined' && typeof model !== 'undefined') { for (var cpt = model[indexColumn].length - 1; cpt >= 0; cpt--) { for (var i = model[indexColumn][cpt].length - 1; i >= 0; i--) { model[indexColumn][cpt][i].cssClass = this.easyFormDragWayConfig.getItemCssDependingNumberItemsInRow(model[indexColumn][cpt].length); } } return true; } else { return false; } } }]); return dragDropItemDecorationService; })(); dragDropItemDecorationService.$inject = ['easyFormDragWayConfig']; _export('default', dragDropItemDecorationService); _export('DRAG_DROP_ITEM_DECOR_SERVICE', DRAG_DROP_ITEM_DECOR_SERVICE); } }; }); $__System.registerDynamic("39", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "\n \n \n \n \n
\n
\n"; global.define = __define; return module.exports; }); $__System.register('3a', ['39'], function (_export) { /* global angular */ 'use strict'; var ddDecorLineTemplate, DRAG_DROP_DECOR_LINE; function ddDecorLine($timeout) { var directive = { restrict: 'A', scope: { 'verboseMode': '@ddLineVerboseMode', 'currentIndex': '@ddLineCurrentIndex', 'parentIndex': '@ddLineParentIndex', 'removeLine': '&ddRemoveLine' }, template: ddDecorLineTemplate, transclude: true, link: linkfct }; return directive; function linkfct($scope, element, attrs, ctrl, transclude) { var verboseModeActive = $scope.verboseMode; var currentIndex = $scope.currentIndex; var parentIndex = $scope.parentIndex; $scope.deleteLine = {}; $scope.deleteLine.readyToDelete = false; $scope.deleteLine.dblClickCount = 0; $scope.isCollapsed = false; var timer = undefined; // verbose mode : just for dev if (verboseModeActive !== '') { var verbose = angular.lowercase(verboseModeActive); if (verbose === 'true' || verbose === '1') { /* eslint no-console:0 */ console.dir({ whoAmI: 'I am verbose from ddDecorLine directive link', verbodeMode: verbose, ParentParentIndex: $scope.$parent.$parent.$index, ParentIndex: parentIndex, currentIndex: currentIndex }); } } /** * removeMe is function related to twice double click sequence to delete a line * * - addClass / remove/class ; will make line in a shake movement * - call "removeLine function to delete the line (if it was rwice double clicked) */ $scope.removeMe = function (event) { event.preventDefault(); event.stopPropagation(); if ($scope.parentIndex === '1') { //2nd dbl click : if is shaking so it is confirmation to delete if ($scope.deleteLine.dblClickCount === 1) { $scope.deleteLine.dblClickCount = 0; $scope.deleteLine.readyToDelete = false; /** * NOTE : trick in calling parent controller function with input param when directive with isolate scope * see : https://thinkster.io/egghead/isolate-scope-am * * Here should be: * *-> in html : dd-remove-line="removeThisLine(indexToDelete) *-> in controller : $scope.removeThisLine = function(lineIndex){ *-> so in directive call it : $scope.removeLine({indexToDelete: currentIndex}); * * * BUT in this case (repeats, ul> li.... complicated) * => works better (if shaking a lot of line in a row it won't mess up) * *-> in html : dd-remove-line="removeThisLine($index) *-> in controller : $scope.removeThisLine = function(lineIndex){ *-> so in directive call it : $scope.removeLine(); */ //$scope.removeLine({indexToDelete: currentIndex}); $scope.removeLine(); //console.warn('force timer destruction after delete!'); $timeout.cancel(timer); } //1st dbl click : make it shake so ready to delete if ($scope.deleteLine.dblClickCount === 0) { $scope.deleteLine.dblClickCount = $scope.deleteLine.dblClickCount + 1; $scope.deleteLine.readyToDelete = true; } } }; /** * signle event will ever occur * * to prevent it to interfere with double click sequence * -> set a time out (shaking line to delete will automaticallly end shaking after timeout : 2 seconds) */ $scope.cancelDelete = function () { //event.preventDefault(); //event.stopPropagation(); timer = $timeout(function () { $scope.deleteLine.dblClickCount = 0; $scope.deleteLine.readyToDelete = false; }, 500); /** * debug */ // timer.then( // () =>{ // console.log( 'Timer resolved!', Date.now() ); // }, // () =>{ // console.log( 'Timer rejected!', Date.now() ); // } // ); }; /** * timer destruction to prevent from bad UI experience */ $scope.$on('$destroy', function () { return $timeout.cancel(timer); }); /** * prevent transclusion creating child scope * * * NOTE :if you want to know more about what I'm saying : check this nice tip on the subject : * http://angular-tips.com/blog/2014/03/transclusion-and-scopes/ */ transclude($scope.$parent, function (contentClone) { //transclusion will append content to '
' var childDiv = angular.element(element.children()[0]); childDiv.append(contentClone); }); } } return { setters: [function (_) { ddDecorLineTemplate = _['default']; }], execute: function () { DRAG_DROP_DECOR_LINE = 'ddDecorLine'; ddDecorLine.$inject = ['$timeout']; _export('default', ddDecorLine); _export('DRAG_DROP_DECOR_LINE', DRAG_DROP_DECOR_LINE); } }; }); $__System.register('3b', [], function (_export) { 'use strict'; var DRAG_DROP_NO_EDITABLE_CONTROL; function ddNoEditableControl() { var directive = { restrict: 'A', link: linkfct }; return directive; function linkfct($scope, element) { element.on('click', function (event) { return event.preventDefault(); }); } } return { setters: [], execute: function () { DRAG_DROP_NO_EDITABLE_CONTROL = 'ddNoEditableControl'; ddNoEditableControl.$inject = []; _export('default', ddNoEditableControl); _export('DRAG_DROP_NO_EDITABLE_CONTROL', DRAG_DROP_NO_EDITABLE_CONTROL); } }; }); $__System.register('3c', ['30', '32', '33', '35', '37', '38', '2f', '3a', '3b'], function (_export) { /* global angular */ 'use strict'; var dragDropItemCounterService, DRAG_DROP_ITEM_COUNTER_SERVICE, ddDecorContainerDirective, DD_DECOR_CONTAINER_DIRECTIVE, ddDecorContainerController, DD_DECOR_CONTAINER_CONTROLLER_NAME, ddDecorDropZone, DD_DECOR_DROPZONE_DIRECTIVE, ddDecorItem, DRAG_DROP_DECOR_ITEM, dragDropItemDecorationService, DRAG_DROP_ITEM_DECOR_SERVICE, ddContentCounter, DD_CONTENT_COUNTER_DIRECTIVE, ddDecorLine, DRAG_DROP_DECOR_LINE, ddNoEditableControl, DRAG_DROP_NO_EDITABLE_CONTROL, DRAGDROP_MODULE; return { setters: [function (_) { dragDropItemCounterService = _['default']; DRAG_DROP_ITEM_COUNTER_SERVICE = _.DRAG_DROP_ITEM_COUNTER_SERVICE; }, function (_2) { ddDecorContainerDirective = _2['default']; DD_DECOR_CONTAINER_DIRECTIVE = _2.DD_DECOR_CONTAINER_DIRECTIVE; }, function (_3) { ddDecorContainerController = _3['default']; DD_DECOR_CONTAINER_CONTROLLER_NAME = _3.DD_DECOR_CONTAINER_CONTROLLER_NAME; }, function (_4) { ddDecorDropZone = _4['default']; DD_DECOR_DROPZONE_DIRECTIVE = _4.DD_DECOR_DROPZONE_DIRECTIVE; }, function (_5) { ddDecorItem = _5['default']; DRAG_DROP_DECOR_ITEM = _5.DRAG_DROP_DECOR_ITEM; }, function (_6) { dragDropItemDecorationService = _6['default']; DRAG_DROP_ITEM_DECOR_SERVICE = _6.DRAG_DROP_ITEM_DECOR_SERVICE; }, function (_f) { ddContentCounter = _f['default']; DD_CONTENT_COUNTER_DIRECTIVE = _f.DD_CONTENT_COUNTER_DIRECTIVE; }, function (_a) { ddDecorLine = _a['default']; DRAG_DROP_DECOR_LINE = _a.DRAG_DROP_DECOR_LINE; }, function (_b) { ddNoEditableControl = _b['default']; DRAG_DROP_NO_EDITABLE_CONTROL = _b.DRAG_DROP_NO_EDITABLE_CONTROL; }], execute: function () { DRAGDROP_MODULE = 'edaDragDropWay.dragdrop.module'; _export('default', angular.module(DRAGDROP_MODULE, []).directive(DD_CONTENT_COUNTER_DIRECTIVE, ddContentCounter).controller(DD_DECOR_CONTAINER_CONTROLLER_NAME, ddDecorContainerController).directive(DD_DECOR_CONTAINER_DIRECTIVE, ddDecorContainerDirective).directive(DD_DECOR_DROPZONE_DIRECTIVE, ddDecorDropZone).directive(DRAG_DROP_DECOR_ITEM, ddDecorItem).service(DRAG_DROP_ITEM_DECOR_SERVICE, dragDropItemDecorationService).directive(DRAG_DROP_NO_EDITABLE_CONTROL, ddNoEditableControl).service(DRAG_DROP_ITEM_COUNTER_SERVICE, dragDropItemCounterService).directive(DRAG_DROP_DECOR_LINE, ddDecorLine)); } }; }); $__System.register('3d', [], function (_export) { 'use strict'; var EDA_RIGHT_CLICK_DIRECTIVE; function edaRightClick($parse) { var directive = { restrict: 'A', link: linkFct }; return directive; function linkFct(scope, element, attrs) { var fn = $parse(attrs.edaRightClick); var columnIndex = $parse(attrs.edaRightClickColIndex); var fctSetRightclicked = $parse(attrs.edaSetRightClicked); /** * on right click event manage * - open edit panel through attrs.edaRightClick function * - set rightCliked attribute (to true) to control (in dragDropModel) */ element.on('contextmenu', function (event) { scope.$apply(function () { event.preventDefault(); if (columnIndex(scope) === 1) fctSetRightclicked(scope, {}); //right click limited to template column (index = 1) if (columnIndex(scope) === 1) fn(scope, { $event: event }); //right click limited to template column (index = 1) }); }); } } return { setters: [], execute: function () { EDA_RIGHT_CLICK_DIRECTIVE = 'edaRightClick'; edaRightClick.$inject = ['$parse']; _export('default', edaRightClick); _export('EDA_RIGHT_CLICK_DIRECTIVE', EDA_RIGHT_CLICK_DIRECTIVE); } }; }); $__System.register('3e', ['9', 'a'], function (_export) { var _createClass, _classCallCheck, EDA_RIGHT_CLICKED_MANAGER_SERVICE, ddItemRightClickedManager; return { setters: [function (_) { _createClass = _['default']; }, function (_a) { _classCallCheck = _a['default']; }], execute: function () { 'use strict'; EDA_RIGHT_CLICKED_MANAGER_SERVICE = 'ddItemRightClickedManager'; ddItemRightClickedManager = (function () { function ddItemRightClickedManager() { _classCallCheck(this, ddItemRightClickedManager); this.init(); } _createClass(ddItemRightClickedManager, [{ key: 'init', value: function init() {} /** * setUnRightClicked * set unSelected (see edaRightClick directive) * * used in edaEditcontroller when droping control */ }, { key: 'setUnRightClicked', value: function setUnRightClicked(dragDropModelItem) { dragDropModelItem.rightCliked = false; } /** * resetAllDragDropItemSelectedState * * simply reset (=set to false) all item.rightCliked * in edit column (dragable column) * * used in edaEditPanel when closeEditPanel() called */ }, { key: 'resetAllDragDropItemSelectedState', value: function resetAllDragDropItemSelectedState(dragDropModel) { angular.forEach(dragDropModel[1], function (line) { angular.forEach(line, function (item) { return item.rightCliked = false; }); }); } }]); return ddItemRightClickedManager; })(); ddItemRightClickedManager.$inject = []; _export('default', ddItemRightClickedManager); _export('EDA_RIGHT_CLICKED_MANAGER_SERVICE', EDA_RIGHT_CLICKED_MANAGER_SERVICE); } }; }); $__System.register('3f', ['3d', '3e'], function (_export) { 'use strict'; var edaRightClick, EDA_RIGHT_CLICK_DIRECTIVE, ddItemRightClickedManager, EDA_RIGHT_CLICKED_MANAGER_SERVICE, EDA_RIGHT_CLICK_MODULE; return { setters: [function (_d) { edaRightClick = _d['default']; EDA_RIGHT_CLICK_DIRECTIVE = _d.EDA_RIGHT_CLICK_DIRECTIVE; }, function (_e) { ddItemRightClickedManager = _e['default']; EDA_RIGHT_CLICKED_MANAGER_SERVICE = _e.EDA_RIGHT_CLICKED_MANAGER_SERVICE; }], execute: function () { EDA_RIGHT_CLICK_MODULE = 'eda.right.click.module'; _export('default', angular.module(EDA_RIGHT_CLICK_MODULE, []).directive(EDA_RIGHT_CLICK_DIRECTIVE, edaRightClick).service(EDA_RIGHT_CLICKED_MANAGER_SERVICE, ddItemRightClickedManager)); } }; }); $__System.register('40', ['9', 'a'], function (_export) { var _createClass, _classCallCheck, DRAG_DROP_CONFIG_PROXY_SERVICE, ddModelConfModelProxyService; return { setters: [function (_) { _createClass = _['default']; }, function (_a) { _classCallCheck = _a['default']; }], execute: function () { 'use strict'; DRAG_DROP_CONFIG_PROXY_SERVICE = 'ddModelConfModelProxyService'; ddModelConfModelProxyService = (function () { function ddModelConfModelProxyService(EasyFormGenFormlyBindingModels, // controllerModalProxy, easyFormDragWayConfig, $parse) { _classCallCheck(this, ddModelConfModelProxyService); this.EasyFormGenFormlyBindingModels = EasyFormGenFormlyBindingModels; // this.controllerModalProxy = controllerModalProxy; // this.dragDropConfig = dragDropConfig; this.easyFormDragWayConfig = easyFormDragWayConfig; this.$parse = $parse; this.init(); } _createClass(ddModelConfModelProxyService, [{ key: 'init', value: function init() {} }, { key: 'refreshAllConfigurationFromDragAndDropModel', value: function refreshAllConfigurationFromDragAndDropModel(configModel, ddModel) { var _this = this; /** * TODO : prevent reset already set props * * previousConfigurationModel = a backup of configuration model 'configModel 'before resetting it * -> dragDrop model contains unique keys of already existing controls : these controls must not be reset / overwritten */ // let previousConfigurationModel = angular.copy(configModel); configModel.lines = []; // iterates line config model angular.forEach(ddModel[1], function (lineValue, keyValue) { // add empty line 1st - if line is empty -> it will be enough configModel.lines.push(angular.copy(_this.EasyFormGenFormlyBindingModels.getEasyFormEmptyConfigurationLineModel())); // update line value field _this.applyThisLine(keyValue + 1, keyValue, configModel); // iterate through columns and add them if control exists angular.forEach(lineValue, function (colValue, colIndex) { // push an empty control model but relative to dradrop : model control type - (if datepicker so additionnal properties are added) var controlToBind = { control: angular.copy(_this.EasyFormGenFormlyBindingModels.getFormlyControlTemplateForNcolumnLine(lineValue.length, _this.getFormlyDetailedControlModelFromDragDropObject(lineValue[colIndex]).formlyType)) }; var formlyDetailedControlModel = _this.getFormlyDetailedControlModelFromDragDropObject(lineValue[colIndex]); // controls alreadys existed so do not reset it - control to bind is the previous one if (typeof colValue.key !== 'undefined') { //console.warn('debug dragdropModel show this control key : ' + colValue.key); controlToBind.control = angular.copy(colValue.configModelControl); //update cssClass depending new position: var newClassName = _this.EasyFormGenFormlyBindingModels.getFormlyControlTemplateForNcolumnLine(lineValue.length, _this.getFormlyDetailedControlModelFromDragDropObject(lineValue[colIndex]).formlyType); controlToBind.control.className = newClassName.className; //test if header nee this one controlToBind.control.cssClass = newClassName.className; // get control details for this key in backup : previousConfigurationModel } else { // controls did not exists before : control to bind is a new one // bind dragdrop control properties to configuration model through controlToBind var _this.bindConfigCtrlModelFromFormlyDetailedCtrlModel(formlyDetailedControlModel, controlToBind, configModel); } // apply controlToBind var to configuration model control if (typeof configModel.lines[keyValue].columns[colIndex] === 'undefined') configModel.lines[keyValue].columns.push(angular.copy(_this.EasyFormGenFormlyBindingModels.getEasyFormConfigurationEmptyControlModel())); configModel.lines[keyValue].columns[colIndex].control = angular.copy(controlToBind.control); configModel.lines[keyValue].columns[colIndex].numColumn = colIndex + 1; configModel.lines[keyValue].columns[colIndex].exist = true; }); }); return configModel; } }, { key: 'refreshControlsKeys', value: function refreshControlsKeys(configModel, dragDropModel) { angular.forEach(configModel.lines, function (aConfigLine, aConfigLineIndex) { angular.forEach(aConfigLine.columns, function (aConfigControl, aConfigControlIndex) { //if last control removed from line - and dragDrop model did not already removed this line if (typeof dragDropModel[1][aConfigLineIndex] !== 'undefined') { if (dragDropModel[1][aConfigLineIndex].length > 0) { dragDropModel[1][aConfigLineIndex][aConfigControlIndex].key = aConfigControl.control.key; //need to save all in dragdropModel as it is a reference //configModel still needed // -> to keep coherence (same back model) between all version of easyForm Generator // -> is the back model (can be saved to dataBase) dragDropModel[1][aConfigLineIndex][aConfigControlIndex].configModelControl = angular.copy(aConfigControl.control); } } }); }); } /** * drag drop model * -> will be used to bind configuration model * of no key saved, configuration model controls would be reset each drop events * * -> matching key : will prevent to reset existing control */ }, { key: 'loadDragDropModelFromConfigurationModel', value: function loadDragDropModelFromConfigurationModel(configModel, dragDropModel) { var _this2 = this; //reset dragdrop fields model NOT all dragDropModel! dragDropModel[1] = []; angular.forEach(configModel.lines, function (aConfigLine, aConfigLineIndex) { //add new line dragDropModel[1].push([]); angular.forEach(aConfigLine.columns, function (aConfigControl) { // get control type from configuration.control.selectedControl var dragdropControlRef = { control: 'empty', cssClass: 'col-xs-12', label: '
' }; angular.forEach(dragDropModel[0], function (groupOfCtrlRef) { angular.forEach(groupOfCtrlRef, function (aCtrlref) { if (aCtrlref.control === aConfigControl.control.selectedControl) dragdropControlRef = angular.copy(aCtrlref); }); }); dragDropModel[1][aConfigLineIndex].push(dragdropControlRef); //update class depending number of control per line var cssClassToApply = _this2.easyFormDragWayConfig.getItemCssDependingNumberItemsInRow(dragDropModel[1][aConfigLineIndex].length); angular.forEach(dragDropModel[1][aConfigLineIndex], function (ddControlToUpdate) { return ddControlToUpdate.cssClass = cssClassToApply; }); }); }); // console.info('bindDragDropModelFromConfigurationModel'); // console.dir( // { // 'when' : 'starting', // 'configModel is ' : angular.copy(configModel), // 'dragDropModel is ' : angular.copy(dragDropModel) // } // ); } /** * returns a control model that is more formly detailed * (more formly detailed : see controls property in EasyFormGenFormlyBindingModels._easyFormListControls) */ }, { key: 'getFormlyDetailedControlModelFromDragDropObject', value: function getFormlyDetailedControlModelFromDragDropObject(dragDrapCtrlModel) { var controlModel = {}; var listControl = this.EasyFormGenFormlyBindingModels.getEasyFormListControls(); var controlsListGetter = this.$parse('controls'); angular.forEach(controlsListGetter(listControl), function (ctrlListValue) { if (ctrlListValue.id === dragDrapCtrlModel.control) controlModel = ctrlListValue; }); return controlModel; } /** * valid a control key is unique * * yes... function name already told us that, * -> it's just confirmation and to see if * you keep focus while reading it ^^ */ }, { key: 'validKeyUniqueness', value: function validKeyUniqueness(thisKey, configurationObj) { var isUnique = true; for (var i = configurationObj.lines.length - 1; i >= 0; i--) { for (var j = configurationObj.lines[i].columns.length - 1; j >= 0; j--) { if (typeof configurationObj.lines[i].columns[j].control !== 'undefined') { if (configurationObj.lines[i].columns[j].control.key === thisKey) { isUnique = false; } } } } return isUnique; } }, { key: 'createUniqueKey', value: function createUniqueKey(baseKeyValue, configurationObj) { // unique key (set only first time) in this model is formly control type + Date.now(); var newKey = baseKeyValue + '-' + Date.now(); if (this.validKeyUniqueness(newKey, configurationObj) === true) { return newKey; } else { newKey = baseKeyValue + '-' + Date.now(); if (this.validKeyUniqueness(newKey, configurationObj) === true) { return newKey; } else { newKey = baseKeyValue + '-' + Date.now(); return newKey; } } } }, { key: 'applyThisLine', value: function applyThisLine(linevalue, lineIndex, configModel) { angular.forEach(configModel.lines, function (aLineValue, aLineKey) { if (aLineKey === lineIndex) aLineValue.line = linevalue; }); } /** * bind formly detailed model to configuration control model */ }, { key: 'bindConfigCtrlModelFromFormlyDetailedCtrlModel', value: function bindConfigCtrlModelFromFormlyDetailedCtrlModel(formlyDetailCtrlModel, configurationCtrlModel, configModel) { /** * TODO :properties should be served by provider * more configurable without pain */ //set selected control : this.$parse('control.selectedControl').assign(configurationCtrlModel, this.$parse('selectedControl')(formlyDetailCtrlModel)); //set type : this.$parse('control.type').assign(configurationCtrlModel, this.$parse('formlyType')(formlyDetailCtrlModel)); //set key : this.$parse('control.key').assign(configurationCtrlModel, this.createUniqueKey(this.$parse('control.type')(configurationCtrlModel), configModel)); //set subtype : this.$parse('control.subtype').assign(configurationCtrlModel, this.$parse('formlySubtype')(formlyDetailCtrlModel)); //set templateOptions.label : this.$parse('control.templateOptions.label').assign(configurationCtrlModel, this.$parse('formlyLabel')(formlyDetailCtrlModel)); //set templateOptions.required : this.$parse('control.templateOptions.required').assign(configurationCtrlModel, this.$parse('formlyRequired')(formlyDetailCtrlModel)); //set templateOptions.required : this.$parse('control.templateOptions.description').assign(configurationCtrlModel, this.$parse('formlyDesciption')(formlyDetailCtrlModel)); //set templateOptions.required : this.$parse('control.templateOptions.placeholder').assign(configurationCtrlModel, this.$parse('formlyPlaceholder')(formlyDetailCtrlModel)); //set templateOptions.required : this.$parse('control.templateOptions.options').assign(configurationCtrlModel, this.$parse('formlyOptions')(formlyDetailCtrlModel)); if (this.$parse('control.type')(configurationCtrlModel) === 'datepicker') { this.$parse('control.templateOptions.datepickerPopup').assign(configurationCtrlModel, this.$parse('datepickerPopup')(formlyDetailCtrlModel)); } } }]); return ddModelConfModelProxyService; })(); ddModelConfModelProxyService.$inject = ['EasyFormGenFormlyBindingModels', // 'controllerModalProxy', // 'dragDropConfig', 'easyFormDragWayConfig', '$parse']; _export('default', ddModelConfModelProxyService); _export('DRAG_DROP_CONFIG_PROXY_SERVICE', DRAG_DROP_CONFIG_PROXY_SERVICE); } }; }); // dragDropConfig, $__System.register('41', ['40'], function (_export) { 'use strict'; var ddModelConfModelProxyService, DRAG_DROP_CONFIG_PROXY_SERVICE, EDA_CONFIG_PROXY_MODULE; return { setters: [function (_) { ddModelConfModelProxyService = _['default']; DRAG_DROP_CONFIG_PROXY_SERVICE = _.DRAG_DROP_CONFIG_PROXY_SERVICE; }], execute: function () { EDA_CONFIG_PROXY_MODULE = 'eda.config.proxy.module'; _export('default', angular.module(EDA_CONFIG_PROXY_MODULE, []).service(DRAG_DROP_CONFIG_PROXY_SERVICE, ddModelConfModelProxyService)); } }; }); $__System.register('42', [], function (_export) { 'use strict'; var DNDLIST_DIRECTIVE, TO_INJECT; function dndList($parse, $timeout, dndDropEffectWorkaround, dndDragTypeWorkaround) { var directive = { link: linkFct }; return directive; function linkFct(scope, element, attr) { // While an element is dragged over the list, this placeholder element is inserted // at the location where the element would be inserted after dropping var placeholder = angular.element('
  • '); var placeholderNode = placeholder[0]; var listNode = element[0]; var horizontal = attr.dndHorizontalList && scope.$eval(attr.dndHorizontalList); var externalSources = attr.dndExternalSources && scope.$eval(attr.dndExternalSources); /** * The dragover event is triggered "every few hundred milliseconds" while an element * is being dragged over our list, or over an child element. */ element.on('dragover', function (event) { event = event.originalEvent || event; if (!isDropAllowed(event)) return true; // First of all, make sure that the placeholder is shown // This is especially important if the list is empty if (placeholderNode.parentNode != listNode) { element.append(placeholder); } if (event.target !== listNode) { // Try to find the node direct directly below the list node. var listItemNode = event.target; while (listItemNode.parentNode !== listNode && listItemNode.parentNode) { listItemNode = listItemNode.parentNode; } if (listItemNode.parentNode === listNode && listItemNode !== placeholderNode) { // If the mouse pointer is in the upper half of the child element, // we place it before the child element, otherwise below it. if (isMouseInFirstHalf(event, listItemNode)) { listNode.insertBefore(placeholderNode, listItemNode); } else { listNode.insertBefore(placeholderNode, listItemNode.nextSibling); } } } else { // This branch is reached when we are dragging directly over the list element. // Usually we wouldn't need to do anything here, but the IE does not fire it's // events for the child element, only for the list directly. Therefore we repeat // the positioning algorithm for IE here. if (isMouseInFirstHalf(event, placeholderNode, true)) { // Check if we should move the placeholder element one spot towards the top. // Note that display none elements will have offsetTop and offsetHeight set to // zero, therefore we need a special check for them. while (placeholderNode.previousElementSibling && (isMouseInFirstHalf(event, placeholderNode.previousElementSibling, true) || placeholderNode.previousElementSibling.offsetHeight === 0)) { listNode.insertBefore(placeholderNode, placeholderNode.previousElementSibling); } } else { // Check if we should move the placeholder element one spot towards the bottom while (placeholderNode.nextElementSibling && !isMouseInFirstHalf(event, placeholderNode.nextElementSibling, true)) { listNode.insertBefore(placeholderNode, placeholderNode.nextElementSibling.nextElementSibling); } } } // At this point we invoke the callback, which still can disallow the drop. // We can't do this earlier because we want to pass the index of the placeholder. if (attr.dndDragover && !invokeCallback(attr.dndDragover, event)) { return stopDragover(); } element.addClass('dndDragover'); event.preventDefault(); event.stopPropagation(); return false; }); /** * When the element is dropped, we use the position of the placeholder element as the * position where we insert the transferred data. This assumes that the list has exactly * one child element per array element. */ element.on('drop', function (event) { event = event.originalEvent || event; if (!isDropAllowed(event)) return true; // The default behavior in Firefox is to interpret the dropped element as URL and // forward to it. We want to prevent that even if our drop is aborted. event.preventDefault(); // Unserialize the data that was serialized in dragstart. According to the HTML5 specs, // the "Text" drag type will be converted to text/plain, but IE does not do that. var data = event.dataTransfer.getData('Text') || event.dataTransfer.getData('text/plain'); var transferredObject; try { transferredObject = JSON.parse(data); } catch (e) { return stopDragover(); } // Invoke the callback, which can transform the transferredObject and even abort the drop. if (attr.dndDrop) { transferredObject = invokeCallback(attr.dndDrop, event, transferredObject); if (!transferredObject) { return stopDragover(); } } // Retrieve the JSON array and insert the transferred object into it. var targetArray = scope.$eval(attr.dndList); scope.$apply(function () { targetArray.splice(getPlaceholderIndex(), 0, transferredObject); }); // In Chrome on Windows the dropEffect will always be none... // We have to determine the actual effect manually from the allowed effects if (event.dataTransfer.dropEffect === 'none') { if (event.dataTransfer.effectAllowed === 'copy' || event.dataTransfer.effectAllowed === 'move') { dndDropEffectWorkaround.dropEffect = event.dataTransfer.effectAllowed; } else { dndDropEffectWorkaround.dropEffect = event.ctrlKey ? 'copy' : 'move'; } } else { dndDropEffectWorkaround.dropEffect = event.dataTransfer.dropEffect; } // Clean up stopDragover(); event.stopPropagation(); return false; }); /** * We have to remove the placeholder when the element is no longer dragged over our list. The * problem is that the dragleave event is not only fired when the element leaves our list, * but also when it leaves a child element -- so practically it's fired all the time. As a * workaround we wait a few milliseconds and then check if the dndDragover class was added * again. If it is there, dragover must have been called in the meantime, i.e. the element * is still dragging over the list. If you know a better way of doing this, please tell me! */ element.on('dragleave', function (event) { event = event.originalEvent || event; element.removeClass('dndDragover'); $timeout(function () { if (!element.hasClass('dndDragover')) { placeholder.remove(); } }, 100); }); /** * Checks whether the mouse pointer is in the first half of the given target element. * * In Chrome we can just use offsetY, but in Firefox we have to use layerY, which only * works if the child element has position relative. In IE the events are only triggered * on the listNode instead of the listNodeItem, therefore the mouse positions are * relative to the parent element of targetNode. */ function isMouseInFirstHalf(event, targetNode, relativeToParent) { var mousePointer = horizontal ? event.offsetX || event.layerX : event.offsetY || event.layerY; var targetSize = horizontal ? targetNode.offsetWidth : targetNode.offsetHeight; var targetPosition = horizontal ? targetNode.offsetLeft : targetNode.offsetTop; targetPosition = relativeToParent ? targetPosition : 0; return mousePointer < targetPosition + targetSize / 2; } /** * We use the position of the placeholder node to determine at which position of the array the * object needs to be inserted */ function getPlaceholderIndex() { return Array.prototype.indexOf.call(listNode.children, placeholderNode); } /** * Checks various conditions that must be fulfilled for a drop to be allowed */ function isDropAllowed(event) { // Disallow drop from external source unless it's allowed explicitly. if (!dndDragTypeWorkaround.isDragging && !externalSources) return false; // Check mimetype. Usually we would use a custom drag type instead of Text, but IE doesn't // support that. if (!hasTextMimetype(event.dataTransfer.types)) return false; // Now check the dnd-allowed-types against the type of the incoming element. For drops from // external sources we don't know the type, so it will need to be checked via dnd-drop. if (attr.dndAllowedTypes && dndDragTypeWorkaround.isDragging) { var allowed = scope.$eval(attr.dndAllowedTypes); if (angular.isArray(allowed) && allowed.indexOf(dndDragTypeWorkaround.dragType) === -1) { return false; } } // Check whether droping is disabled completely if (attr.dndDisableIf && scope.$eval(attr.dndDisableIf)) return false; return true; } /** * Small helper function that cleans up if we aborted a drop. */ function stopDragover() { placeholder.remove(); element.removeClass('dndDragover'); return true; } /** * Invokes a callback with some interesting parameters and returns the callbacks return value. */ function invokeCallback(expression, event, item) { return $parse(expression)(scope, { event: event, index: getPlaceholderIndex(), item: item || undefined, external: !dndDragTypeWorkaround.isDragging, type: dndDragTypeWorkaround.isDragging ? dndDragTypeWorkaround.dragType : undefined }); } /** * Check if the dataTransfer object contains a drag type that we can handle. In old versions * of IE the types collection will not even be there, so we just assume a drop is possible. */ function hasTextMimetype(types) { if (!types) return true; for (var i = 0; i < types.length; i++) { if (types[i] === 'Text' || types[i] === 'text/plain') return true; } return false; } } } return { setters: [], execute: function () { DNDLIST_DIRECTIVE = 'dndList'; TO_INJECT = ['$parse', '$timeout', 'dndDropEffectWorkaround', 'dndDragTypeWorkaround']; dndList.$inject = TO_INJECT; _export('default', dndList); _export('DNDLIST_DIRECTIVE', DNDLIST_DIRECTIVE); } }; }); $__System.register('43', [], function (_export) { 'use strict'; var DNDDRAGGABLE_DIRECTIVE, TO_INJECT; function dndDraggable($parse, $timeout, dndDropEffectWorkaround, dndDragTypeWorkaround) { var directive = { link: linkFct }; return directive; function linkFct(scope, element, attr) { var _this = this; // Set the HTML5 draggable attribute on the element element.attr('draggable', 'true'); // If the dnd-disable-if attribute is set, we have to watch that if (attr.dndDisableIf) { scope.$watch(attr.dndDisableIf, function (disabled) { return element.attr('draggable', !disabled); }); } /** * When the drag operation is started we have to prepare the dataTransfer object, * which is the primary way we communicate with the target element */ element.on('dragstart', function (event) { event = event.originalEvent || event; // Serialize the data associated with this element. IE only supports the Text drag type event.dataTransfer.setData('Text', angular.toJson(scope.$eval(attr.dndDraggable))); // Only allow actions specified in dnd-effect-allowed attribute event.dataTransfer.effectAllowed = attr.dndEffectAllowed || 'move'; // Add CSS classes. See documentation above element.addClass('dndDragging'); $timeout(function () { element.addClass('dndDraggingSource'); }, 0); // Workarounds for stupid browsers, see description below dndDropEffectWorkaround.dropEffect = 'none'; dndDragTypeWorkaround.isDragging = true; // Save type of item in global state. Usually, this would go into the dataTransfer // typename, but we have to use "Text" there to support IE dndDragTypeWorkaround.dragType = attr.dndType ? scope.$eval(attr.dndType) : undefined; // Invoke callback $parse(attr.dndDragstart)(scope, { event: event }); event.stopPropagation(); }); /** * The dragend event is triggered when the element was dropped or when the drag * operation was aborted (e.g. hit escape button). Depending on the executed action * we will invoke the callbacks specified with the dnd-moved or dnd-copied attribute. */ element.on('dragend', function (event) { event = event.originalEvent || event; // Invoke callbacks. Usually we would use event.dataTransfer.dropEffect to determine // the used effect, but Chrome has not implemented that field correctly. On Windows // it always sets it to 'none', while Chrome on Linux sometimes sets it to something // else when it's supposed to send 'none' (drag operation aborted). var dropEffect = dndDropEffectWorkaround.dropEffect; scope.$apply(function () { switch (dropEffect) { case 'move': $parse(attr.dndMoved)(scope, { event: event }); break; case 'copy': $parse(attr.dndCopied)(scope, { event: event }); break; } }); // Clean up element.removeClass('dndDragging'); element.removeClass('dndDraggingSource'); dndDragTypeWorkaround.isDragging = false; event.stopPropagation(); }); /** * When the element is clicked we invoke the callback function * specified with the dnd-selected attribute. */ element.on('click', function (event) { event = event.originalEvent || event; scope.$apply(function () { return $parse(attr.dndSelected)(scope, { event: event }); }); event.stopPropagation(); }); /** * Workaround to make element draggable in IE9 */ element.on('selectstart', function () { if (_this.dragDrop) _this.dragDrop(); return false; }); } } return { setters: [], execute: function () { DNDDRAGGABLE_DIRECTIVE = 'dndDraggable'; TO_INJECT = ['$parse', '$timeout', 'dndDropEffectWorkaround', 'dndDragTypeWorkaround']; dndDraggable.$inject = TO_INJECT; _export('default', dndDraggable); _export('DNDDRAGGABLE_DIRECTIVE', DNDDRAGGABLE_DIRECTIVE); } }; }); $__System.register('44', ['42', '43'], function (_export) { 'use strict'; var dndList, DNDLIST_DIRECTIVE, dndDraggable, DNDDRAGGABLE_DIRECTIVE, DRAG_DROP_LIST_MODULE; return { setters: [function (_) { dndList = _['default']; DNDLIST_DIRECTIVE = _.DNDLIST_DIRECTIVE; }, function (_2) { dndDraggable = _2['default']; DNDDRAGGABLE_DIRECTIVE = _2.DNDDRAGGABLE_DIRECTIVE; }], execute: function () { DRAG_DROP_LIST_MODULE = 'dndLists.module'; _export('default', angular.module(DRAG_DROP_LIST_MODULE, []).directive(DNDLIST_DIRECTIVE, dndList).directive(DNDDRAGGABLE_DIRECTIVE, dndDraggable).factory('dndDragTypeWorkaround', function () { return {}; }).factory('dndDropEffectWorkaround', function () { return {}; })); } }; }); $__System.register('45', [], function (_export) { 'use strict'; var PAGE_SLIDE_DIRECTIVE; function pageslide() { var directive = { restrict: 'EAC', transclude: false, scope: { psOpen: '=?', psAutoClose: '=?', psSide: '@', psSpeed: '@', psClass: '@', psSize: '@', psSqueeze: '@', psCloak: '@', psPush: '@', psContainer: '@' }, link: linkFct }; return directive; function linkFct($scope, el, attrs) { /* Inspect */ //console.log($scope); //console.log(el); //console.log(attrs); /* Parameters */ var param = {}; param.side = $scope.psSide || 'right'; param.speed = $scope.psSpeed || '0.5'; param.size = $scope.psSize || '300px'; param.zindex = 1000; // Override with custom CSS param.className = $scope.psClass || 'ng-pageslide'; param.cloak = $scope.psCloak && $scope.psCloak.toLowerCase() == 'false' ? false : true; param.squeeze = Boolean($scope.psSqueeze) || false; param.push = Boolean($scope.psPush) || false; param.container = $scope.psContainer || false; // Apply Class el.addClass(param.className); /* DOM manipulation */ var content = null; var slider = null; var body = param.container ? document.getElementById(param.container) : document.body; slider = el[0]; // Check for div tag if (slider.tagName.toLowerCase() !== 'div' && slider.tagName.toLowerCase() !== 'pageslide') throw new Error('Pageslide can only be applied to
    or elements'); // Check for content if (slider.children.length === 0) throw new Error('You have to content inside the '); content = angular.element(slider.children); /* Append */ body.appendChild(slider); /* Style setup */ slider.style.zIndex = param.zindex; slider.style.position = param.container !== false ? 'absolute' : 'fixed'; slider.style.width = 0; slider.style.height = 0; slider.style.overflow = 'hidden'; slider.style.transitionDuration = param.speed + 's'; slider.style.webkitTransitionDuration = param.speed + 's'; slider.style.transitionProperty = 'width, height'; if (param.squeeze) { body.style.position = 'absolute'; body.style.transitionDuration = param.speed + 's'; body.style.webkitTransitionDuration = param.speed + 's'; body.style.transitionProperty = 'top, bottom, left, right'; } switch (param.side) { case 'right': slider.style.height = attrs.psCustomHeight || '100%'; slider.style.top = attrs.psCustomTop || '0px'; slider.style.bottom = attrs.psCustomBottom || '0px'; slider.style.right = attrs.psCustomRight || '0px'; break; case 'left': slider.style.height = attrs.psCustomHeight || '100%'; slider.style.top = attrs.psCustomTop || '0px'; slider.style.bottom = attrs.psCustomBottom || '0px'; slider.style.left = attrs.psCustomLeft || '0px'; break; case 'top': slider.style.width = attrs.psCustomWidth || '100%'; slider.style.left = attrs.psCustomLeft || '0px'; slider.style.top = attrs.psCustomTop || '0px'; slider.style.right = attrs.psCustomRight || '0px'; break; case 'bottom': slider.style.width = attrs.psCustomWidth || '100%'; slider.style.bottom = attrs.psCustomBottom || '0px'; slider.style.left = attrs.psCustomLeft || '0px'; slider.style.right = attrs.psCustomRight || '0px'; break; } /* Closed */ function psClose(slider, param) { if (slider && slider.style.width !== 0 && slider.style.width !== 0) { if (param.cloak) content.css('display', 'none'); switch (param.side) { case 'right': slider.style.width = '0px'; if (param.squeeze) body.style.right = '0px'; if (param.push) { body.style.right = '0px'; body.style.left = '0px'; } break; case 'left': slider.style.width = '0px'; if (param.squeeze) body.style.left = '0px'; if (param.push) { body.style.left = '0px'; body.style.right = '0px'; } break; case 'top': slider.style.height = '0px'; if (param.squeeze) body.style.top = '0px'; if (param.push) { body.style.top = '0px'; body.style.bottom = '0px'; } break; case 'bottom': slider.style.height = '0px'; if (param.squeeze) body.style.bottom = '0px'; if (param.push) { body.style.bottom = '0px'; body.style.top = '0px'; } break; } } $scope.psOpen = false; } /* Open */ function psOpen(slider, param) { if (slider.style.width !== 0 && slider.style.width !== 0) { switch (param.side) { case 'right': slider.style.width = param.size; if (param.squeeze) body.style.right = param.size; if (param.push) { body.style.right = param.size; body.style.left = '-' + param.size; } break; case 'left': slider.style.width = param.size; if (param.squeeze) body.style.left = param.size; if (param.push) { body.style.left = param.size; body.style.right = '-' + param.size; } break; case 'top': slider.style.height = param.size; if (param.squeeze) body.style.top = param.size; if (param.push) { body.style.top = param.size; body.style.bottom = '-' + param.size; } break; case 'bottom': slider.style.height = param.size; if (param.squeeze) body.style.bottom = param.size; if (param.push) { body.style.bottom = param.size; body.style.top = '-' + param.size; } break; } setTimeout(function () { if (param.cloak) content.css('display', 'block'); }, param.speed * 1000); } } // function isFunction(functionToCheck) { // var getType = {}; // return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]'; // } /* * Watchers * */ $scope.$watch('psOpen', function (value) { /* eslint no-extra-boolean-cast:0 */ if (!!value) { // Open psOpen(slider, param); } else { // Close psClose(slider, param); } }); /* * Events * */ $scope.$on('$destroy', function () { return body.removeChild(slider); }); if ($scope.psAutoClose) { $scope.$on('$locationChangeStart', function () { return psClose(slider, param); }); $scope.$on('$stateChangeStart', function () { return psClose(slider, param); }); } } } return { setters: [], execute: function () { PAGE_SLIDE_DIRECTIVE = 'pageslide'; pageslide.$inject = []; _export('default', pageslide); _export('PAGE_SLIDE_DIRECTIVE', PAGE_SLIDE_DIRECTIVE); } }; }); $__System.register('46', ['45'], function (_export) { 'use strict'; var pageslide, PAGE_SLIDE_DIRECTIVE, PAGE_SLIDE_MODULE; return { setters: [function (_) { pageslide = _['default']; PAGE_SLIDE_DIRECTIVE = _.PAGE_SLIDE_DIRECTIVE; }], execute: function () { PAGE_SLIDE_MODULE = 'pageslide.module'; _export('default', angular.module(PAGE_SLIDE_MODULE, []).directive(PAGE_SLIDE_DIRECTIVE, pageslide)); } }; }); $__System.register('47', [], function (_export) { 'use strict'; var LIST_DRAG_DROP_ITEM_CSS_CLASSES, DRAG_DROP_CONFIG_MODEL, DRAG_DROP_PRESENTATION_MODEL, ITEMS_NOT_TO_COUNT_FOR_REAL; return { setters: [], execute: function () { LIST_DRAG_DROP_ITEM_CSS_CLASSES = [{ cssClass: 'col-md-12', numberItemPerRow: 0 }, { cssClass: 'col-md-12', numberItemPerRow: 1 }, { cssClass: 'col-md-6', numberItemPerRow: 2 }, { cssClass: 'col-md-4', numberItemPerRow: 3 }]; DRAG_DROP_CONFIG_MODEL = { dropZoneConfig: { decoration: [{ WhenIndex: 0, ApplycssClass: 'col-md-4', fontAwesomeIcon: 'fa fa-level-up', title: 'Drag control from here : ' }, { WhenIndex: 1, ApplycssClass: 'col-md-8', fontAwesomeIcon: 'fa fa-level-down', title: 'Drop control into here : ' }], verboseMode: false }, containerConfig: { decoration: [{ WhenIndex: 0, ApplycssClass: 'col-md-12', title: 'Blank : ', groupId: 'blank', isCollapsed: true }, { WhenIndex: 1, ApplycssClass: 'col-md-12', title: 'Headers : ', groupId: 'headers', isCollapsed: true }, { WhenIndex: 2, ApplycssClass: 'col-md-12', title: 'Text inputs : ', groupId: 'inputs', isCollapsed: true }, { WhenIndex: 3, ApplycssClass: 'col-md-12', title: 'Textareas : ', groupId: 'textareas', isCollapsed: true }, { WhenIndex: 4, ApplycssClass: 'col-md-12', title: 'Radios : ', groupId: 'radios', isCollapsed: true }, { WhenIndex: 5, ApplycssClass: 'col-md-12', title: 'Checkboxes : ', groupId: 'checkboxes', isCollapsed: true }, { WhenIndex: 6, ApplycssClass: 'col-md-12', title: 'Selects : ', groupId: 'selects', isCollapsed: true }], verboseMode: false, collapseEnabled: true, collapseCtrl: [{ atIndex: 0, collapse: true }, { atIndex: 1, collapse: true }] }, itemConfig: { verboseMode: false } }; DRAG_DROP_PRESENTATION_MODEL = [ //1 column here is control selection column [], [ //empty 1st line at initialisation []]]; ITEMS_NOT_TO_COUNT_FOR_REAL = { //placeholder : '', itemBeingDragged: '' }; _export('LIST_DRAG_DROP_ITEM_CSS_CLASSES', LIST_DRAG_DROP_ITEM_CSS_CLASSES); _export('DRAG_DROP_CONFIG_MODEL', DRAG_DROP_CONFIG_MODEL); _export('DRAG_DROP_PRESENTATION_MODEL', DRAG_DROP_PRESENTATION_MODEL); _export('ITEMS_NOT_TO_COUNT_FOR_REAL', ITEMS_NOT_TO_COUNT_FOR_REAL); } }; }); $__System.register('48', ['47'], function (_export) { // TODO : Add here configs from ES5 dragDropConfigProvider 'use strict'; var LIST_DRAG_DROP_ITEM_CSS_CLASSES, DRAG_DROP_CONFIG_MODEL, DRAG_DROP_PRESENTATION_MODEL, ITEMS_NOT_TO_COUNT_FOR_REAL, EASY_FORM_DRAG_DROP_WAY_CONFIG_NAME; function easyFormDragWayConfig() { var _listDragDropItemCssClasses = [].concat(LIST_DRAG_DROP_ITEM_CSS_CLASSES); var _dragDropConfigModel = angular.copy(DRAG_DROP_CONFIG_MODEL); var _dragDropPresentationModel = [].concat(DRAG_DROP_PRESENTATION_MODEL); var _itemsNotToCountFoReal = angular.copy(ITEMS_NOT_TO_COUNT_FOR_REAL); var _configuration = defaultConfig(); var _controlsList = controlsList(); // let _defaultLanguage = getDefaultLanguage(); // let _currentLanguage = initDefaultLanguage(); var _showPreviewPanel = getDefaultshowPreviewPanel(); var _showPreviewModels = getDefaultShowPreviewModel(); /* jshint validthis:true */ this.$get = easyFormDragDropWayConfigGET; this.setModalAnimation = setModalAnimation; this.getModalAnimation = getModalAnimation; this.configuration = _configuration; this.getEnabledControls = getEnabledControls; this.disableControl = disableControl; this.enableControl = enableControl; // this.setLanguage = setLanguage; // this.getCurrentLanguage = getCurrentLanguage; this.showPreviewPanel = showPreviewPanel; this.showPreviewModels = showPreviewModels; this.setListItemCssClass = setListItemCssClass; this.getItemsNotTocount = getItemsNotTocount; this.setItemsNotTocount = setItemsNotTocount; this.addControlToDragDropPresentationModel = addControlToDragDropPresentationModel; this.getDragDropPresentationModel = getDragDropPresentationModel; function setListItemCssClass(fromConfig) { _listDragDropItemCssClasses = [].concat(fromConfig); } function getItemsNotTocount() { return _itemsNotToCountFoReal; } function setItemsNotTocount(fromConfig) { _itemsNotToCountFoReal = angular.copy(fromConfig); } //set default config function defaultConfig() { var _defaultConfiguration = { modalAnimated: false }; return _defaultConfiguration; } function addControlToDragDropPresentationModel(controlToAdd, groupToAdd) { if (typeof controlToAdd !== 'undefined' && typeof groupToAdd !== 'undefined') { addToGroupControl(controlToAdd, groupToAdd); } } function getDragDropPresentationModel() { return _dragDropPresentationModel; } //show preview panel by default function getDefaultshowPreviewPanel() { return true; } //show preview data, fields models in preview panel function getDefaultShowPreviewModel() { return true; } // function getCurrentLanguage(){ // return _currentLanguage; // } //list of controls function controlsList() { var controls = [{ name: 'empty', enabled: true }, { name: 'Header', enabled: true }, { name: 'Subtitle', enabled: true }, { name: 'TextInput', enabled: true }, { name: 'Password', enabled: true }, { name: 'Email', enabled: true }, { name: 'Date', enabled: true }, { name: 'Texarea', enabled: true }, { name: 'RichTextEditor', enabled: true }, { name: 'Radio', enabled: true }, { name: 'Checkbox', enabled: true }, { name: 'BasicSelect', enabled: true }, { name: 'GroupedSelect', enabled: true }]; return controls; } function showPreviewPanel(wantToShow) { if (angular.isDefined(wantToShow)) { if (wantToShow === true) _showPreviewPanel = true; if (wantToShow === false) _showPreviewPanel = false; } } function showPreviewModels(wantToShow) { if (angular.isDefined(wantToShow)) { if (wantToShow === true) _showPreviewModels = true; if (wantToShow === false) _showPreviewModels = false; } } // //language : set default to english // function getDefaultLanguage(){ // let lang = 'en'; // return lang; // } // function setDefaultLanguage(){ // _currentLanguage = _defaultLanguage; // $translateProvider.preferredLanguage(_currentLanguage); // return _currentLanguage; // } // function setLanguage(language){ // if (angular.isString(language)) { // _currentLanguage = language; // $translateProvider.preferredLanguage(language); // }else{ // setDefaultLanguage(); // } // } // function initDefaultLanguage(){ // $translateProvider.useSanitizeValueStrategy('escape'); //security : Enable escaping of HTML // $translateProvider.fallbackLanguage(_defaultLanguage); //fallback language to default language // $translateProvider.preferredLanguage(_defaultLanguage); // return _defaultLanguage; // } function getEnabledControls() { return _controlsList; } function disableControl(controlName) { if (angular.isString(controlName)) { angular.forEach(_controlsList, function (aControl) { if (aControl.name === controlName) aControl.enabled = false; }); } } function enableControl(controlName) { if (angular.isString(controlName)) { angular.forEach(_controlsList, function (aControl) { if (aControl.name === controlName) aControl.enabled = true; }); } } function setModalAnimation(flagConfig) { var valueToApply = flagConfig === true ? flagConfig : flagConfig === false ? flagConfig : _configuration.modalAnimated; _configuration.modalAnimated = valueToApply; } function getModalAnimation() { return _configuration.modalAnimated; } //$get implementation : // easyFormDragDropWayConfigGET.$inject = ['$translate']; // function easyFormDragDropWayConfigGET($translate){ easyFormDragDropWayConfigGET.$inject = []; function easyFormDragDropWayConfigGET() { var service = { setModalAnimation: setModalAnimationFct, getModalAnimationValue: getModalAnimationValue, getListEnabledControl: getListEnabledControl, // setLanguage : switchLanguage, // getCurrentLanguage : getCurrentLanguage, isPreviewPanelVisible: isPreviewPanelVisible, arePreviewModelsVisible: arePreviewModelsVisible, getListItemCssClass: getListItemCssClass, getItemsNotToCount: getItemsNotToCount, getItemCssDependingNumberItemsInRow: getItemCssDependingNumberItemsInRow, getDistinctItemCssClass: getDistinctItemCssClass, getDragDropConfigModel: getDragDropConfigModel, getDragDropPresentationModel: getDragDropPresentationModel, setDragDropConfigContainerDecorationCollapse: setDragDropConfigContainerDecorationCollapse }; return service; function getDragDropPresentationModel() { return _dragDropPresentationModel; } function setDragDropConfigContainerDecorationCollapse(dragDropConfigModel, indexValue, isCollapsedBool) { if (typeof indexValue !== 'undefined' && typeof isCollapsedBool !== 'undefined') { if (indexValue === parseInt(indexValue, 10)) { dragDropConfigModel.containerConfig.decoration[indexValue].isCollapsed = isCollapsedBool; } } return true; } function getDragDropConfigModel() { return _dragDropConfigModel; } function getDistinctItemCssClass() { var distinctCssClass = []; angular.forEach(_listDragDropItemCssClasses, function (valueRef) { var cssClassRef = valueRef.cssClass; if (distinctCssClass.length === 0) { distinctCssClass.push(cssClassRef); } else { var canAdd = true; angular.forEach(distinctCssClass, function (valueProc) { var cssClassProc = valueProc; if (cssClassRef === cssClassProc) { canAdd = false; } }); if (canAdd) distinctCssClass.push(cssClassRef); } }); return distinctCssClass; } function getItemCssDependingNumberItemsInRow(numberOfItems) { if (typeof numberOfItems !== 'undefined') { var classToReturn = ''; for (var i = _listDragDropItemCssClasses.length - 1; i >= 0; i--) { if (_listDragDropItemCssClasses[i].numberItemPerRow === numberOfItems) { classToReturn = _listDragDropItemCssClasses[i].cssClass; } } return classToReturn; } else { return ''; } } function getListItemCssClass() { return _listDragDropItemCssClasses; } function getItemsNotToCount() { return _itemsNotToCountFoReal; } function getModalAnimationValue() { return _configuration.modalAnimated; } function setModalAnimationFct(value) { setModalAnimation(value); } function getListEnabledControl() { return angular.copy(_controlsList); } // function switchLanguage(language){ // if (angular.isString(language)) { // _currentLanguage = language; // $translate.use(language); // }else{ // setDefaultLanguage(); // } // } function isPreviewPanelVisible() { return _showPreviewPanel; } function arePreviewModelsVisible() { return _showPreviewModels; } } /** * addToGroupControl : add control to _dragDropPresentationModel * @param {[type]} thisControl : control to add * @param {[type]} thisGroup : groupId wher this control should be added * * NOTE : if _dragDropPresentationModel wrong initialized it will create list of group conforming to * configModel */ function addToGroupControl(thisControl, thisGroup) { /** * search group if already exists */ if (_dragDropPresentationModel[0].length > 0) { /** * case when _dragDropConfigModel.containerConfig.decoration.length is > to _dragDropPresentationModel[0].length * * for instance : initialization _dragDropPresentationModel[0] in between */ if (_dragDropPresentationModel[0].length < _dragDropConfigModel.containerConfig.decoration.length) { var missingGroupNumber = _dragDropConfigModel.containerConfig.decoration.length - _dragDropPresentationModel[0].length; for (var i = 0; i < missingGroupNumber; i++) { _dragDropPresentationModel[0].push([]); } } /** * push control to right index * (deduced by _dragDropConfigModel.containerConfig.decoration.WhenIndex value for groupId === thisGroup) */ _dragDropConfigModel.containerConfig.decoration.forEach(function (groupConfig) { if (thisGroup.addToGroupCtrl === groupConfig.groupId) { _dragDropPresentationModel[0][groupConfig.WhenIndex].push(thisControl); } }); } else { /** * no group no control * * initialize _dragDropConfigModel.containerConfig.decoration list */ _dragDropConfigModel.containerConfig.decoration.forEach(function () { return _dragDropPresentationModel[0].push([]); }); /** * push control to right index * (deduced by _dragDropConfigModel.containerConfig.decoration.WhenIndex value for groupId === thisGroup) */ _dragDropConfigModel.containerConfig.decoration.forEach(function (groupConfig) { if (thisGroup.addToGroupCtrl === groupConfig.groupId) { _dragDropPresentationModel[0][groupConfig.WhenIndex].push(thisControl); } }); } } } // easyFormDragWayConfig.$inject = ['$translateProvider']; return { setters: [function (_) { LIST_DRAG_DROP_ITEM_CSS_CLASSES = _.LIST_DRAG_DROP_ITEM_CSS_CLASSES; DRAG_DROP_CONFIG_MODEL = _.DRAG_DROP_CONFIG_MODEL; DRAG_DROP_PRESENTATION_MODEL = _.DRAG_DROP_PRESENTATION_MODEL; ITEMS_NOT_TO_COUNT_FOR_REAL = _.ITEMS_NOT_TO_COUNT_FOR_REAL; }], execute: function () { EASY_FORM_DRAG_DROP_WAY_CONFIG_NAME = 'easyFormDragWayConfig'; easyFormDragWayConfig.$inject = []; _export('default', easyFormDragWayConfig); _export('EASY_FORM_DRAG_DROP_WAY_CONFIG_NAME', EASY_FORM_DRAG_DROP_WAY_CONFIG_NAME); } }; }); $__System.registerDynamic("49", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = "
    \n
    \n
    \n
    \n
    \n\t\t\t\t\t
    \n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t 2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdnd-dragover=\"vm.dragoverCallbackItems($parent.$parent.$index, $parent.$index, $index, external);\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdnd-drop=\"vm.dropCallbackItems(event, index, $index,$parent.$index, $parent.$parent.$index, $parent.$parent.$parent.$index, item, external, type, 'itemType');\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclass=\"itemlist\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdd-content-counter\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdd-value-when-placeholder=\"dndPlaceholder\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdd-value-when-dragging=\"dndDraggingSource\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdd-full-model = \"vm.dragDropModel\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdd-content-counter-current-index=\"{{$index}}\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdd-content-counter-parent-index=\"{{$parent.$index}}\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tdd-content-counter-force-css-refresh = \"command.forceRefresh\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{vm.configuration.submitButtonText}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{{vm.configuration.cancelButtonText}}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t\tCustomize form buttons\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tCustomize Submit button Text :\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tCustomize Cancel button Text :\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t\t\tDATA MODEL\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{{vm.model | json}}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t\tFIELDS MODEL (ready to save to database one)\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t{{vm.wfFormFieldsOnlyNeededProperties | json}}\n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t \n\t\t\t\t\t\t\t\t\t\t\tSave this form\n\t\t\t\t\t\t\t\t\t\t

    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tName to this form :\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\t\tsave this form\n\t\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\t
    \n\t\t\t
    \n
    \n Easy form generator : {{vm.easyFormGeneratorVERSION}} — Erwan DATIN (MacKentoch)\n
    \n\t\t\t
    \n \n \n\n"; global.define = __define; return module.exports; }); $__System.registerDynamic("4a", [], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; var $Object = Object; module.exports = { create: $Object.create, getProto: $Object.getPrototypeOf, isEnum: {}.propertyIsEnumerable, getDesc: $Object.getOwnPropertyDescriptor, setDesc: $Object.defineProperty, setDescs: $Object.defineProperties, getKeys: $Object.keys, getNames: $Object.getOwnPropertyNames, getSymbols: $Object.getOwnPropertySymbols, each: [].forEach }; global.define = __define; return module.exports; }); $__System.registerDynamic("4b", ["4a"], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; var $ = $__require('4a'); module.exports = function defineProperty(it, key, desc) { return $.setDesc(it, key, desc); }; global.define = __define; return module.exports; }); $__System.registerDynamic("4c", ["4b"], true, function($__require, exports, module) { ; var global = this, __define = global.define; global.define = undefined; module.exports = { "default": $__require('4b'), __esModule: true }; global.define = __define; return module.exports; }); $__System.registerDynamic("9", ["4c"], true, function($__require, exports, module) { "use strict"; ; var global = this, __define = global.define; global.define = undefined; var _Object$defineProperty = $__require('4c')["default"]; exports["default"] = (function() { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; _Object$defineProperty(target, descriptor.key, descriptor); } } return function(Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })(); exports.__esModule = true; global.define = __define; return module.exports; }); $__System.registerDynamic("a", [], true, function($__require, exports, module) { "use strict"; ; var global = this, __define = global.define; global.define = undefined; exports["default"] = function(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }; exports.__esModule = true; global.define = __define; return module.exports; }); $__System.register('4d', [], function (_export) { /* global angular */ 'use strict'; var DEBUG_MODEL, initDebugModel, DEFAULT_TAB_MODEL, initTabModel, COLUMN_TEMPLATE, initColumnTemplate, LINE_TEMPLATE, initLineTemplate, DEFAULT_IHM_MODEL, initIhmModel; return { setters: [], execute: function () { DEBUG_MODEL = { showDebug: false, configurationModelNumberofLines: 1 }; initDebugModel = function initDebugModel() { return angular.copy(DEBUG_MODEL); }; DEFAULT_TAB_MODEL = { editTab: { active: true }, previewTab: { active: false, tabVisible: true, modelsVisible: true } }; initTabModel = function initTabModel(isPreviewPanelVisible, arePreviewModelsVisible) { var _tabModel = angular.copy(DEFAULT_TAB_MODEL); angular.extend(_tabModel.previewTab, { tabVisible: isPreviewPanelVisible, modelsVisible: arePreviewModelsVisible }); return _tabModel; }; COLUMN_TEMPLATE = { numColumn: -1, exist: true, control: { type: 'none', key: 'none', subtype: 'none' // templateOptions: { // label: 'none', // placeholder: 'none', // required: false, // description: 'Descriptive text' // } } }; initColumnTemplate = function initColumnTemplate() { return angular.copy(COLUMN_TEMPLATE); }; LINE_TEMPLATE = { line: -1, activeColumn: 1, columns: [{ numColumn: 1, exist: true, control: { type: 'none', key: 'none' // templateOptions: { // label: 'none', // placeholder: 'none', // required: false, // description: 'Descriptive text' // } } }] }; initLineTemplate = function initLineTemplate() { return angular.copy(LINE_TEMPLATE); }; DEFAULT_IHM_MODEL = { preview: { formlyModelViewExpanded: true, formlyFieldsViewExpanded: true, customizeFormButtonsExpanded: true, saveThisFormExpanded: true } }; initIhmModel = function initIhmModel() { return angular.copy(DEFAULT_IHM_MODEL); }; _export('initDebugModel', initDebugModel); _export('initTabModel', initTabModel); _export('initColumnTemplate', initColumnTemplate); _export('initLineTemplate', initLineTemplate); _export('initIhmModel', initIhmModel); } }; }); $__System.register('4e', ['9', 'a', '4d'], function (_export) { var _createClass, _classCallCheck, initTabModel, initIhmModel, DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER, DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLERAS, edaDragDropWayEasyFormGenCtrl; return { setters: [function (_) { _createClass = _['default']; }, function (_a) { _classCallCheck = _a['default']; }, function (_d) { initTabModel = _d.initTabModel; initIhmModel = _d.initIhmModel; }], execute: function () { /* global angular */ /////////////////////////////////////////////////////////////////////// // TODO : // - check no use methods that come from step way and delete if not needed // - check other TODO (a lot of fixes are needed) /////////////////////////////////////////////////////////////////////// 'use strict'; DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER = 'edaDragDropWayEasyFormGenCtrl'; DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLERAS = 'vm'; edaDragDropWayEasyFormGenCtrl = (function () { function edaDragDropWayEasyFormGenCtrl($scope, easyFormGenVersion, $filter, $anchorScroll, toaster, $timeout, $modal, $log, formFieldManage, controllerModalProxy, dragDropItemDecorationService, // dragDropConfig, ddModelConfModelProxyService, ddItemRightClickedManager, easyFormDragWayConfig) { _classCallCheck(this, edaDragDropWayEasyFormGenCtrl); this.$scope = $scope; this.easyFormGenVersion = easyFormGenVersion; this.$filter = $filter; this.$anchorScroll = $anchorScroll; this.toaster = toaster; this.$timeout = $timeout; this.$modal = $modal; this.$log = $log; this.formFieldManage = formFieldManage; this.controllerModalProxy = controllerModalProxy; this.dragDropItemDecorationService = dragDropItemDecorationService; // this.dragDropConfig = dragDropConfig; this.ddModelConfModelProxyService = ddModelConfModelProxyService; this.ddItemRightClickedManager = ddItemRightClickedManager; this.easyFormDragWayConfig = easyFormDragWayConfig; this.init(); } _createClass(edaDragDropWayEasyFormGenCtrl, [{ key: 'init', value: function init() { this.easyFormGeneratorVERSION = this.easyFormGenVersion; this.tab = initTabModel(this.easyFormDragWayConfig.isPreviewPanelVisible(), this.easyFormDragWayConfig.arePreviewModelsVisible()); this.returnSaveEvent = false; this.dataModel = {}; //was vm.model in ES5 version this.wfFormFields = []; this.wfFormFieldsOnlyNeededProperties = []; this.ihm = initIhmModel(); this.easyFormDragDropProperties = this.easyFormDragWayConfig.getDragDropConfigModel(); this.dragDropModel = [].concat(this.easyFormDragWayConfig.getDragDropPresentationModel()); this.numberOfColumns = 1; this.MaxNumberOfColumns = 3; this.MinNumberOfColumns = 1; this.configuration = {}; this.animationsEnabled = this.easyFormDragWayConfig.getModalAnimationValue(); this.editPanelModel = { toggle: false }; this.debugProxyModel = this.controllerModalProxy.ProxyModel; this.model = []; this.formFieldManage.initConfigurationEditFromScratch(this.configuration, false); this.controllerModalProxy.initProxyModel(); } }, { key: 'collapseAllGroupControl', value: function collapseAllGroupControl(allExceptThisGroupIndex) { var _this = this; angular.forEach(this.easyFormDragDropProperties.containerConfig.decoration, function (value) { if (value.WhenIndex !== allExceptThisGroupIndex) _this.easyFormDragWayConfig.setDragDropConfigContainerDecorationCollapse(_this.easyFormDragDropProperties, value.WhenIndex, true); }); } }, { key: 'onSubmit', value: function onSubmit() { this.toaster.pop({ type: 'info', timeout: 2000, title: 'should save data model if it were not a static example', body: 'data :' + this.$filter('json')(this.dataModel, 4), showCloseButton: true }); } }, { key: 'resetToZeroModel', value: function resetToZeroModel() { this.configuration.activeLine = 1; if (this.configuration.lines.length > 1) this.configuration.lines.splice(1, this.configuration.lines.length - 2); return this.countConfigurationModelLines(); } //TO CHECK if does not come from step way : }, { key: 'countConfigurationModelLines', value: function countConfigurationModelLines() { return this.configuration.lines.length; } // //TO CHECK THEN TO DELETE : should come from step way... // setActiveLineNumber(lineNumber){ // if (lineNumber <= this.countConfigurationModelLines()) this.configuration.activeLine = lineNumber; // } // //TO CHECK THEN TO DELETE : should come from step way... // upThisLine(indexLine){ // if (indexLine > -1) { // if (this.configuration.lines[indexLine - 1]) { // let currentLineObj = this.configuration.lines[indexLine]; // this.configuration.lines.splice(indexLine , 1); // this.configuration.lines.splice((indexLine - 1), 0, currentLineObj); // this.configuration.activeLine = 1; // } // } // // this.formFieldManage.applyConfigurationToformlyModel(this.configuration, this.wfFormFields, this.dataModel); // this.wfFormFieldsOnlyNeededProperties = angular.copy(this.wfFormFields); // } // //TO CHECK THEN TO DELETE : should come from step way... // downThisLine(indexLine){ // if (indexLine > -1) { // if (this.configuration.lines[indexLine + 1]) { // let currentLineObj = this.configuration.lines[indexLine]; // this.configuration.lines.splice(indexLine , 1); // this.configuration.lines.splice((indexLine + 1), 0, currentLineObj); // this.configuration.activeLine = 1; // } // } // this.formFieldManage.applyConfigurationToformlyModel(this.configuration, this.wfFormFields, this.dataModel); // this.wfFormFieldsOnlyNeededProperties = angular.copy(this.wfFormFields); // } // //TO CHECK THEN TO DELETE : should come from step way... // removeThisLine(index){ // if (index > -1) { // if (this.configuration.lines.length > 1) { // if (this.configuration.activeLine === index + 1) this.configuration.activeLine = 1; // this.configuration.lines.splice(index, 1); // }else{ // this.$timeout(()=>{ // this.toaster.pop({ // type : 'warning', // title : 'Last line' , // body : 'Can\'t delete the last line', // showCloseButton : true // }); // }, 100); // } // this.formFieldManage.applyConfigurationToformlyModel(this.configuration, this.wfFormFields, this.dataModel); // this.wfFormFieldsOnlyNeededProperties = angular.copy(this.wfFormFields); // } // } // //TO CHECK THEN TO DELETE : should come from step way... // increaseNumberOfColumns(){ // if (this.configuration.lines[this.configuration.activeLine -1].columns.length < this.MaxNumberOfColumns) { // let newNumberOfColumns = this.configuration.lines[this.configuration.activeLine -1].columns.push(initColumnTemplate()); // this.configuration.lines[this.configuration.activeLine -1].columns[newNumberOfColumns - 1].numColumn = newNumberOfColumns; // } // this.formFieldManage.applyConfigurationToformlyModel(this.configuration, this.wfFormFields, this.dataModel); // this.wfFormFieldsOnlyNeededProperties = angular.copy(this.wfFormFields); // } // //TO CHECK THEN TO DELETE : should come from step way... // decreaseNumberOfColumns(indexLine, indexColumn){ // if (this.configuration.lines[this.configuration.activeLine -1].columns.length > 1) { // this.configuration.lines[this.configuration.activeLine -1].columns.splice(this.configuration.lines[this.configuration.activeLine -1].columns.length -1, 1); // } // this.formFieldManage.applyConfigurationToformlyModel(this.configuration, this.wfFormFields, this.dataModel); // this.wfFormFieldsOnlyNeededProperties = angular.copy(this.wfFormFields); // } }, { key: 'saveThisForm', value: function saveThisForm() { if (typeof this.configuration.formName === 'undefined') { this.toaster.pop({ type: 'warning', timeout: 2000, title: 'Form name is undefined', body: 'Form has not been saved.', showCloseButton: true }); return false; } if (this.configuration.formName === '') { this.toaster.pop({ type: 'warning', timeout: 2000, title: 'Form name is required', body: 'Form has not been saved.', showCloseButton: true }); return false; } this.toaster.pop({ type: 'wait', timeout: 10000, title: 'Form is being saved', body: 'Wait.', showCloseButton: true }); this.toaster.clear(); this.returnSaveEvent = true; return true; } }, { key: 'dragoverCallbackContainer', value: function dragoverCallbackContainer(parentparentIndex, parentIndex, index) { //prevent container in layout column to be drag to control select contianer if (index === 0) return false; return true; } }, { key: 'dropCallback', value: function dropCallback(event, index, item, external, type, allowedType) { var _this2 = this; if (external) { if (allowedType === 'itemType' && !item.label) return false; if (allowedType === 'containerType' && !angular.isArray(item)) return false; } //set a timeout befire binding since ddModel may not be called when already full updated var timerRefreshDDToConfig = this.$timeout(function () { _this2.configuration = angular.copy(_this2.ddModelConfModelProxyService.refreshAllConfigurationFromDragAndDropModel(_this2.configuration, _this2.dragDropModel)); _this2.formFieldManage.applyConfigurationToformlyModel(_this2.configuration, _this2.wfFormFields, _this2.dataModel); _this2.wfFormFieldsOnlyNeededProperties = angular.copy(_this2.wfFormFields); _this2.ddModelConfModelProxyService.refreshControlsKeys(_this2.configuration, _this2.dragDropModel); }, 200); this.$scope.$on('$destroy', function () { return _this2.$timeout.cancel(timerRefreshDDToConfig); }); return item; } }, { key: 'dndItemMoved', value: function dndItemMoved(parentParentIndex, parentIndex, itemIndex) { //prevent item from first container to disapear when dropped on other container if (parentParentIndex > 0) this.dragDropModel[parentParentIndex][parentIndex].splice(itemIndex, 1); } }, { key: 'dragoverCallbackItems', value: function dragoverCallbackItems(ParentParentIndex, parentIndex) { //prevent items in layout column to be drag to control select if (parentIndex === 0) return false; return true; } //TODO : will replace in html : dnd-disable-if="items.length > 2" }, { key: 'disableItemDropIf', value: function disableItemDropIf() {} }, { key: 'dropCallbackItems', value: function dropCallbackItems(event, index, realIndex, parentIndex, parentParentIndex, parentParentParentIndex, item, external, type, allowedType) { var _this3 = this; if (external) { if (allowedType === 'itemType' && !item.label) return false; if (allowedType === 'containerType' && !angular.isArray(item)) return false; } //set a timeout before binding since ddModel may not be called when already full updated var timerRefreshDDToConfig = this.$timeout(function () { _this3.configuration = angular.copy(_this3.ddModelConfModelProxyService.refreshAllConfigurationFromDragAndDropModel(_this3.configuration, _this3.dragDropModel)); _this3.formFieldManage.applyConfigurationToformlyModel(_this3.configuration, _this3.wfFormFields, _this3.dataModel); _this3.wfFormFieldsOnlyNeededProperties = angular.copy(_this3.wfFormFields); // refresh controls key in dragDrop Model to persist already exists controls between refreshes when item drop events _this3.ddModelConfModelProxyService.refreshControlsKeys(_this3.configuration, _this3.dragDropModel); }, 200); // add/set rightCliked property to false (will help edaRightClick directive) this.ddItemRightClickedManager.setUnRightClicked(item); // timerRefreshDDToConfig timer destruction this.$scope.$on('$destroy', function () { return _this3.$timeout.cancel(timerRefreshDDToConfig); }); return item; } }, { key: 'saveFromEditPanel', value: function saveFromEditPanel() { /** * TODO : * should be called from edit panel * * AND * * should call all these methods * * need to get : * * - line index * - column index * - basicSelectRowCollection (from edpitpanelcontroller) --> maybe in controllerModalProxy service * - groupedSelectRowCollection (from edpitpanelcontroller) --> maybe in controllerModalProxy service * - radioRowCollection (from edpitpanelcontroller) --> maybe in controllerModalProxy service */ this.controllerModalProxy.bindSpecialCtrlTemporyModelsToProxyModel(); //save config to control //controllerModalProxy.applyConfigToSelectedControl(self.proxyModel); //return current model to parent controller : //update configuration model and formly model this.controllerModalProxy.bindConfigurationModelFromProxyModel(this.controllerModalProxy.getEditPanelModelLineIndex(), this.controllerModalProxy.getEditPanelModelColumnIndex(), this.configuration); this.formFieldManage.applyConfigurationToformlyModel(this.configuration, this.wfFormFields, this.dataModel); this.wfFormFieldsOnlyNeededProperties = angular.copy(this.wfFormFields); this.ddModelConfModelProxyService.refreshControlsKeys(this.configuration, this.dragDropModel); this.controllerModalProxy.setEditPanelModelToggle(false); this.editPanelModel.toggle = this.controllerModalProxy.getEditPanelModelToggle(); this.ddItemRightClickedManager.resetAllDragDropItemSelectedState(this.dragDropModel); } }, { key: 'closeEditPanel', value: function closeEditPanel() { // reset all rightClicked control properties to false this.ddItemRightClickedManager.resetAllDragDropItemSelectedState(this.dragDropModel); /** * TODO : refresh configuration model * uncomment after update these next 3 lines * * NOTE : indexLine AND numcolumn should be stored in service and * updated when togle sidepanel */ //this.controllerModalProxy.bindConfigurationModelFromProxyModel(indexLine, numcolumn, modalAddCtrlModel, this.configuration); //this.formFieldManage.applyConfigurationToformlyModel(this.configuration, this.wfFormFields, this.dataModel); //this.wfFormFieldsOnlyNeededProperties = angular.copy(this.wfFormFields); this.controllerModalProxy.setEditPanelModelToggle(false); this.editPanelModel.toggle = this.controllerModalProxy.getEditPanelModelToggle(); } }, { key: 'setRightClicked', value: function setRightClicked(previousState, item) { item.rightCliked = true; } }, { key: 'toggleEditPanel', value: function toggleEditPanel(event, lineIndex, colIndex, item) { var _this4 = this; this.ddItemRightClickedManager.resetAllDragDropItemSelectedState(this.dragDropModel); // already opened (could be another control edit) if (this.controllerModalProxy.getEditPanelModelToggle()) { // -> immediate close and refresh configuration model + formly model this.controllerModalProxy.setEditPanelModelToggle(false); this.editPanelModel.toggle = this.controllerModalProxy.getEditPanelModelToggle(); //TODO : for refreshing //this.controllerModalProxy.bindConfigurationModelFromProxyModel(indexLine, numcolumn, modalAddCtrlModel, this.configuration); //this.formFieldManage.applyConfigurationToformlyModel(this.configuration, this.wfFormFields, this.dataModel); //this.wfFormFieldsOnlyNeededProperties = angular.copy(this.wfFormFields); // check if new control right clicked otherwise just toggle side panel if (typeof this.controllerModalProxy.getEditPanelModelLineIndex() !== 'undefined' && typeof this.controllerModalProxy.getEditPanelModelColumnIndex() !== 'undefined' && typeof this.controllerModalProxy.getEditPanelModelControl() !== 'undefined') { if (this.controllerModalProxy.getEditPanelModelLineIndex() === lineIndex && this.controllerModalProxy.getEditPanelModelColumnIndex() === colIndex && angular.equals(this.controllerModalProxy.getEditPanelModelControl(), item)) { //console.info('already opened for SAME ctrl : so close - no re-open'); } else { (function () { //console.info('already opened for DIFFERENT ctrl : so re-open'); item.rightCliked = true; // set a timeout before re-opening, 500ms is ok for a ps-size="400px" var timerCloseOpenedEditPanel = _this4.$timeout(function () { _this4.controllerModalProxy.setEditPanelModelLineIndex(lineIndex); _this4.controllerModalProxy.setEditPanelModelColumnIndex(colIndex); _this4.controllerModalProxy.setEditPanelModelControl(item); // control model passed to Service : controllerModalProxy _this4.controllerModalProxy.setProxyModelFromConfigurationSelection(_this4.configuration, lineIndex, colIndex); _this4.controllerModalProxy.setEditPanelModelToggle(true); _this4.$scope.editPanelModel.toggle = _this4.controllerModalProxy.getEditPanelModelToggle(); }, 200); _this4.$scope.$on('$destroy', function () { return _this4.$timeout.cancel(timerCloseOpenedEditPanel); }); })(); } } } else { // previous state = closed = immediate open // console.info('NOT already opened : so open'); item.rightCliked = true; this.controllerModalProxy.setEditPanelModelLineIndex(lineIndex); this.controllerModalProxy.setEditPanelModelColumnIndex(colIndex); this.controllerModalProxy.setEditPanelModelControl(item); // control model passed to Service : controllerModalProxy this.controllerModalProxy.setProxyModelFromConfigurationSelection(this.configuration, lineIndex, colIndex); this.controllerModalProxy.setEditPanelModelToggle(true); this.editPanelModel.toggle = this.controllerModalProxy.getEditPanelModelToggle(); } // console.info('after toggleLeftPanel check :'); // console.dir({ // 'this.editPanelModel' : angular.copy(this.editPanelModel), // 'controllerModalProxy.editPanelModel' : angular.copy(this.controllerModalProxy.editPanelModel) // }); } // // refreshModels : to call after drag and drop events // refreshModels(){ // this.$timeout(()=>{ // console.info('refreshing models'); // formFieldManage.applyConfigurationToformlyModel(this.configuration, this.wfFormFields, this.dataModel); // this.wfFormFieldsOnlyNeededProperties = angular.copy(this.wfFormFields); // }, 10); // } }, { key: 'removeThisLine', value: function removeThisLine(lineIndex) { this.dragDropModel[1].splice(lineIndex, 1); } //TODO : to fix }, { key: 'addNewline', value: function addNewline() { // re-render formfield // TODO : to fix this.formFieldManage.applyConfigurationToformlyModel(this.configuration, this.wfFormFields, this.dataModel); this.wfFormFieldsOnlyNeededProperties = angular.copy(this.wfFormFields); } }, { key: 'insertNewLine', value: function insertNewLine() { this.addNewline(); this.dragDropModel[1].push([]); } }]); return edaDragDropWayEasyFormGenCtrl; })(); edaDragDropWayEasyFormGenCtrl.$inject = ['$scope', 'easyFormGenVersion', '$filter', '$anchorScroll', 'toaster', '$timeout', '$modal', '$log', 'formFieldManage', 'controllerModalProxy', 'dragDropItemDecorationService', // 'dragDropConfig', 'ddModelConfModelProxyService', 'ddItemRightClickedManager', 'easyFormDragWayConfig']; _export('default', edaDragDropWayEasyFormGenCtrl); _export('DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER', DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER); _export('DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLERAS', DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLERAS); } }; }); $__System.register('4f', ['49', '4e'], function (_export) { /* global angular */ //TODO : to bindToController //-> then angular 1.4+ will be required... //-> check methot to refactor inside rag drop way then common step way and drag drop way 'use strict'; var edaDragDropWayEasyFormGenDirectiveTemplate, DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER, DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLERAS, EDA_DRAGDROP_WAY_EASY_FORM_GEN_DIRECTIVE; function edaDragdropWayEasyFormGen($timeout, formFieldManage, ddModelConfModelProxyService, // dragDropConfig, easyFormDragWayConfig) { var directive = { restrict: 'E', template: edaDragDropWayEasyFormGenDirectiveTemplate, scope: { edaEasyFormGeneratorModel: '=', edaSaveFormEvent: '&edaSaveFormEvent' }, controller: DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER, controllerAs: DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLERAS, replace: false, link: linkFct }; return directive; function linkFct(scope) { // watch "scope.easyFormGeneratorModel" scope.$watch(function () { return scope.edaEasyFormGeneratorModel; }, function () { return loadExistingConfigurationModel(); }, true); // watch "scope.returnSaveEvent"" = catch saving form event scope.$watch(function () { return scope.returnSaveEvent; }, function (newValue) { if (newValue === true) { var _easyFormGeneratorModel = { formName: scope.vm.configuration.formName, btnSubmitText: scope.vm.configuration.submitButtonText, btnCancelText: scope.vm.configuration.cancelButtonText, edaFieldsModel: scope.vm.configuration.lines, //just as test edaFieldsModelStringified: angular.toJson(scope.vm.configuration.lines), formlyFieldsModel: scope.vm.wfFormFieldsOnlyNeededProperties, dataModel: scope.vm.dataModel }; scope.edaSaveFormEvent({ edaEasyFormGeneratorModel: _easyFormGeneratorModel }); //back to false, waiting next save event scope.returnSaveEvent = false; } }); function returnAttributeConfigurationLinesIfNotEmpty() { var edaEasyFormGeneratorModelToReturn = angular.isArray(scope.edaEasyFormGeneratorModel.edaFieldsModel) ? scope.edaEasyFormGeneratorModel.edaFieldsModel.length > 0 ? scope.edaEasyFormGeneratorModel.edaFieldsModel : emptyEdaFieldsModel() : emptyEdaFieldsModel(); return edaEasyFormGeneratorModelToReturn; } /** * empty fields model : to display at least an empty line * otherwise would look like ugly empty line like it were a bug */ function emptyEdaFieldsModel() { var emptyModel = [{ 'line': 1, 'activeColumn': 1, 'columns': [{ 'numColumn': 1, 'exist': true, 'control': { 'type': 'none', 'key': 'none' } }] }]; return emptyModel; } function returnAttributeDataModelIfNotEmpty() { var dataModelToReturn = angular.isArray(scope.edaEasyFormGeneratorModel.dataModel) ? scope.edaEasyFormGeneratorModel.dataModel.length > 0 ? scope.edaEasyFormGeneratorModel.dataModel : [] : []; return dataModelToReturn; } function loadExistingConfigurationModel() { if (angular.isDefined(scope.edaEasyFormGeneratorModel)) { var configlines = returnAttributeConfigurationLinesIfNotEmpty(); scope.vm.configurationLoaded = {}; formFieldManage.bindConfigurationLines(scope.vm.configurationLoaded, configlines, false); //apply configuration model scope.vm.configuration = angular.copy(scope.vm.configurationLoaded); //apply ddModel ddModelConfModelProxyService.loadDragDropModelFromConfigurationModel(scope.vm.configuration, scope.vm.dragDropModel); updateConfigurationClassName(scope.vm.configuration); ddModelConfModelProxyService.refreshControlsKeys(scope.vm.configuration, scope.vm.dragDropModel); //apply formly model formFieldManage.applyConfigurationToformlyModel(scope.vm.configuration, scope.vm.wfFormFields, scope.vm.dataModel); scope.vm.wfFormFieldsOnlyNeededProperties = angular.copy(scope.vm.wfFormFields); scope.vm.dataModel = returnAttributeDataModelIfNotEmpty(); scope.vm.configuration.formName = angular.isString(scope.edaEasyFormGeneratorModel.formName) ? scope.edaEasyFormGeneratorModel.formName : ''; scope.vm.configuration.submitButtonText = angular.isString(scope.edaEasyFormGeneratorModel.btnSubmitText) ? scope.edaEasyFormGeneratorModel.btnSubmitText : 'Submit'; scope.vm.configuration.cancelButtonText = angular.isString(scope.edaEasyFormGeneratorModel.btnCancelText) ? scope.edaEasyFormGeneratorModel.btnCancelText : 'Cancel'; } } function updateConfigurationClassName(configModel) { angular.forEach(configModel.lines, function (aline) { var cssClassToApply = easyFormDragWayConfig.getItemCssDependingNumberItemsInRow(aline.columns.length); angular.forEach(aline.columns, function (aControl) { return aControl.control.className = cssClassToApply; }); }); } } } return { setters: [function (_) { edaDragDropWayEasyFormGenDirectiveTemplate = _['default']; }, function (_e) { DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER = _e.DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER; DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLERAS = _e.DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLERAS; }], execute: function () { EDA_DRAGDROP_WAY_EASY_FORM_GEN_DIRECTIVE = 'edaDragdropWayEasyFormGen'; edaDragdropWayEasyFormGen.$inject = ['$timeout', 'formFieldManage', 'ddModelConfModelProxyService', // 'dragDropConfig', 'easyFormDragWayConfig']; _export('default', edaDragdropWayEasyFormGen); _export('EDA_DRAGDROP_WAY_EASY_FORM_GEN_DIRECTIVE', EDA_DRAGDROP_WAY_EASY_FORM_GEN_DIRECTIVE); } }; }); $__System.register('50', ['48', '4e', '4f'], function (_export) { /* global angular */ 'use strict'; var easyFormDragWayConfig, EASY_FORM_DRAG_DROP_WAY_CONFIG_NAME, edaDragDropWayEasyFormGenCtrl, DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER, edaDragdropWayEasyFormGen, EDA_DRAGDROP_WAY_EASY_FORM_GEN_DIRECTIVE, DRAGDROP_MODULE; return { setters: [function (_) { easyFormDragWayConfig = _['default']; EASY_FORM_DRAG_DROP_WAY_CONFIG_NAME = _.EASY_FORM_DRAG_DROP_WAY_CONFIG_NAME; }, function (_e) { edaDragDropWayEasyFormGenCtrl = _e['default']; DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER = _e.DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER; }, function (_f) { edaDragdropWayEasyFormGen = _f['default']; EDA_DRAGDROP_WAY_EASY_FORM_GEN_DIRECTIVE = _f.EDA_DRAGDROP_WAY_EASY_FORM_GEN_DIRECTIVE; }], execute: function () { DRAGDROP_MODULE = 'edaDragDropWay.main.module'; _export('default', angular.module(DRAGDROP_MODULE, []).provider(EASY_FORM_DRAG_DROP_WAY_CONFIG_NAME, easyFormDragWayConfig).controller(DRAG_DROP_WAY_EASY_FORM_GEN_CONTROLLER, edaDragDropWayEasyFormGenCtrl).directive(EDA_DRAGDROP_WAY_EASY_FORM_GEN_DIRECTIVE, edaDragdropWayEasyFormGen)); } }; }); $__System.register('51', [], function (_export) { 'use strict'; var TRUST_THIS_FILTER_NAME; function trustThis($sce) { return function (value, type) { return $sce.trustAs(type || 'html', value); }; } return { setters: [], execute: function () { TRUST_THIS_FILTER_NAME = 'trustThis'; trustThis.$inject = ['$sce']; _export('default', trustThis); _export('TRUST_THIS_FILTER_NAME', TRUST_THIS_FILTER_NAME); } }; }); $__System.register('52', ['51'], function (_export) { 'use strict'; var trustThis, TRUST_THIS_FILTER_NAME, TRUST_THIS_FILTER_MODULE; return { setters: [function (_) { trustThis = _['default']; TRUST_THIS_FILTER_NAME = _.TRUST_THIS_FILTER_NAME; }], execute: function () { TRUST_THIS_FILTER_MODULE = 'edaDragDropWay.trustThis.filter'; _export('default', angular.module(TRUST_THIS_FILTER_MODULE, []).filter(TRUST_THIS_FILTER_NAME, trustThis)); } }; }); $__System.register('1', ['2', '3', '5', '6', '41', '44', '46', '50', '52', '2a', '2e', '3c', '3f'], function (_export) { 'use strict'; var formlyConfigFunct, dragDropConfigFunt, EASY_FORM_DD_VERSION_NAME, EASY_FORM_DD_VERSION_VALUE, coreModule, configProxyModule, dragAndDropListModule, pageSlideModule, easyFormDragDropModule, trustThisFilterModule, leftPanelModule, formlyProxyModule, dragdropModule, rightClickModule, DRAG_DROP_WAY_MODULE_NAME, DRAG_DROP_MODULES_INJECT, mainModule; return { setters: [function (_) {}, function (_2) { formlyConfigFunct = _2['default']; }, function (_3) { dragDropConfigFunt = _3['default']; EASY_FORM_DD_VERSION_NAME = _3.EASY_FORM_DD_VERSION_NAME; EASY_FORM_DD_VERSION_VALUE = _3.EASY_FORM_DD_VERSION_VALUE; }, function (_4) { coreModule = _4['default']; }, function (_5) { configProxyModule = _5['default']; }, function (_6) { dragAndDropListModule = _6['default']; }, function (_7) { pageSlideModule = _7['default']; }, function (_8) { easyFormDragDropModule = _8['default']; }, function (_9) { trustThisFilterModule = _9['default']; }, function (_a) { leftPanelModule = _a['default']; }, function (_e) { formlyProxyModule = _e['default']; }, function (_c) { dragdropModule = _c['default']; }, function (_f) { rightClickModule = _f['default']; }], execute: function () { DRAG_DROP_WAY_MODULE_NAME = 'eda.easyformGen.dragDropWay'; DRAG_DROP_MODULES_INJECT = [coreModule.name, configProxyModule.name, trustThisFilterModule.name, leftPanelModule.name, formlyProxyModule.name, dragdropModule.name, easyFormDragDropModule.name, rightClickModule.name, dragAndDropListModule.name, pageSlideModule.name]; mainModule = angular.module(DRAG_DROP_WAY_MODULE_NAME, DRAG_DROP_MODULES_INJECT).config(dragDropConfigFunt).config(formlyConfigFunct).value(EASY_FORM_DD_VERSION_NAME, EASY_FORM_DD_VERSION_VALUE); _export('default', mainModule); } }; }); }) (function(factory) { factory(); }); //# sourceMappingURL=eda.dragdropway.js.map