You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
685 B
36 lines
685 B
export default function IdClaimHandler(moddle) { |
|
this._moddle = moddle; |
|
} |
|
|
|
IdClaimHandler.$inject = [ 'moddle' ]; |
|
|
|
|
|
IdClaimHandler.prototype.execute = function(context) { |
|
var ids = this._moddle.ids, |
|
id = context.id, |
|
element = context.element, |
|
claiming = context.claiming; |
|
|
|
if (claiming) { |
|
ids.claim(id, element); |
|
} else { |
|
ids.unclaim(id); |
|
} |
|
}; |
|
|
|
/** |
|
* Command revert implementation. |
|
*/ |
|
IdClaimHandler.prototype.revert = function(context) { |
|
var ids = this._moddle.ids, |
|
id = context.id, |
|
element = context.element, |
|
claiming = context.claiming; |
|
|
|
if (claiming) { |
|
ids.unclaim(id); |
|
} else { |
|
ids.claim(id, element); |
|
} |
|
}; |
|
|
|
|