jsketch/dist/sketchable.serializer.min.js

1 line
601 B
JavaScript

!function(a){var b="sketchable";Sketchable.prototype.plugins.serializer=function(a){deepExtend(a,{serializer:{save:function(){var c=dataBind(a.elem)[b];return JSON.stringify({options:c.options,strokes:c.strokes,actions:c.sketch.callStack})},load:function(c){for(var d=dataBind(a.elem)[b],e=JSON.parse(c),f=d.sketch,g=0;g<e.actions.length;g++){var h=e.actions[g];h.property&&"object"!=typeof h.value?f.data[h.property]=h.value:h.method?f[h.method].apply(f,h.args):console.warn("Unknown call:",h)}return d.sketch.callStack=e.actions.slice(),d.strokes=e.strokes.slice(),d.options=e.options,a}}})}}(this);