forked from jakesgordon/javascript-state-machine
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstate-machine-visualize.min.js
More file actions
1 lines (1 loc) · 2.74 KB
/
state-machine-visualize.min.js
File metadata and controls
1 lines (1 loc) · 2.74 KB
1
!function(t,n){"object"==typeof exports&&"object"==typeof module?module.exports=n():"function"==typeof define&&define.amd?define("StateMachineVisualize",[],n):"object"==typeof exports?exports.StateMachineVisualize=n():t.StateMachineVisualize=n()}(this,function(){return function(t){function n(r){if(e[r])return e[r].exports;var o=e[r]={i:r,l:!1,exports:{}};return t[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}var e={};return n.m=t,n.c=e,n.i=function(t){return t},n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:r})},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,n){return Object.prototype.hasOwnProperty.call(t,n)},n.p="",n(n.s=1)}([function(t,n,e){"use strict";t.exports=function(t,n){var e,r,o;for(e=1;e<arguments.length;e++){r=arguments[e];for(o in r)r.hasOwnProperty(o)&&(t[o]=r[o])}return t}},function(t,n,e){"use strict";function r(t,n){return a(o(t,n))}function o(t,n){n=n||{};var e=o.fetch(t),r=n.name,i=o.rankdir(n.orientation),s=o.states(e,n),a=o.transitions(e,n),u={};return r&&(u.name=r),i&&(u.rankdir=i),s&&s.length>0&&(u.states=s),a&&a.length>0&&(u.transitions=a),u}function i(t){return" "+t+" "}function s(t){return'"'+t+'"'}function a(t){t=t||{};var n,e,r=t.name||"fsm",o=t.states||[],i=t.transitions||[],u=t.rankdir,f=[];for(f.push("digraph "+s(r)+" {"),u&&f.push(" rankdir="+u+";"),n=0,e=o.length;n<e;n++)f.push(a.state(o[n]));for(n=0,e=i.length;n<e;n++)f.push(a.edge(i[n]));return f.push("}"),f.join("\n")}var u=e(0);o.fetch=function(t){return"function"==typeof t?t.prototype._fsm.config:t._fsm.config},o.rankdir=function(t){return"horizontal"===t?"LR":"vertical"===t?"TB":void 0},o.states=function(t,n){var e,r=t.states;return n.init||(e=r.indexOf(t.init.from),r=r.slice(0,e).concat(r.slice(e+1))),r},o.transitions=function(t,n){var e,r,i,s=t.init,a=t.options.transitions||[],u=[];for(n.init&&s.active&&o.transition(s.name,s.from,s.to,s.dot,t,n,u),e=0,r=a.length;e<r;e++)i=t.options.transitions[e],o.transition(i.name,i.from,i.to,i.dot,t,n,u);return u},o.transition=function(t,n,e,r,s,a,f){var c,l,p=s.defaults.wildcard;if(Array.isArray(n))for(c=0,l=n.length;c<l;c++)o.transition(t,n[c],e,r,s,a,f);else if(n===p||void 0===n)for(c=0,l=s.states.length;c<l;c++)o.transition(t,s.states[c],e,r,s,a,f);else e===p||void 0===e?o.transition(t,n,n,r,s,a,f):"function"==typeof e||f.push(u({},{from:n,to:e,label:i(t)},r||{}))},a.state=function(t){return" "+s(t)+";"},a.edge=function(t){return" "+s(t.from)+" -> "+s(t.to)+a.edge.attr(t)+";"},a.edge.attr=function(t){var n,e,r,o=Object.keys(t).sort(),i=[];for(n=0,e=o.length;n<e;n++)"from"!==(r=o[n])&&"to"!==r&&i.push(r+"="+s(t[r]));return i.length>0?" [ "+i.join(" ; ")+" ]":""},r.dotcfg=o,r.dotify=a,t.exports=r}])});