import define from '../define'; let fn, elesfn; fn = elesfn = ({ data: define.data( { field: 'data', bindingEvent: 'data', allowBinding: true, allowSetting: true, settingEvent: 'data', settingTriggersEvent: true, triggerFnName: 'trigger', allowGetting: true, immutableKeys: { 'id': true, 'source': true, 'target': true, 'parent': true }, updateStyle: true } ), removeData: define.removeData( { field: 'data', event: 'data', triggerFnName: 'trigger', triggerEvent: true, immutableKeys: { 'id': true, 'source': true, 'target': true, 'parent': true }, updateStyle: true } ), scratch: define.data( { field: 'scratch', bindingEvent: 'scratch', allowBinding: true, allowSetting: true, settingEvent: 'scratch', settingTriggersEvent: true, triggerFnName: 'trigger', allowGetting: true, updateStyle: true } ), removeScratch: define.removeData( { field: 'scratch', event: 'scratch', triggerFnName: 'trigger', triggerEvent: true, updateStyle: true } ), rscratch: define.data( { field: 'rscratch', allowBinding: false, allowSetting: true, settingTriggersEvent: false, allowGetting: true } ), removeRscratch: define.removeData( { field: 'rscratch', triggerEvent: false } ), id: function(){ let ele = this[0]; if( ele ){ return ele._private.data.id; } } }); // aliases fn.attr = fn.data; fn.removeAttr = fn.removeData; export default elesfn;