{"ast":null,"code":"function createRenderStep(runNextFrame) {\n  var toRun = [];\n  var toRunNextFrame = [];\n  var numToRun = 0;\n  var isProcessing = false;\n  var toKeepAlive = new WeakSet();\n  var step = {\n    schedule: function schedule(callback, keepAlive, immediate) {\n      if (keepAlive === void 0) {\n        keepAlive = false;\n      }\n      if (immediate === void 0) {\n        immediate = false;\n      }\n      var addToCurrentFrame = immediate && isProcessing;\n      var buffer = addToCurrentFrame ? toRun : toRunNextFrame;\n      if (keepAlive) toKeepAlive.add(callback);\n      if (buffer.indexOf(callback) === -1) {\n        buffer.push(callback);\n        if (addToCurrentFrame && isProcessing) numToRun = toRun.length;\n      }\n      return callback;\n    },\n    cancel: function cancel(callback) {\n      var index = toRunNextFrame.indexOf(callback);\n      if (index !== -1) toRunNextFrame.splice(index, 1);\n      toKeepAlive[\"delete\"](callback);\n    },\n    process: function process(frameData) {\n      var _a;\n      isProcessing = true;\n      _a = [toRunNextFrame, toRun], toRun = _a[0], toRunNextFrame = _a[1];\n      toRunNextFrame.length = 0;\n      numToRun = toRun.length;\n      if (numToRun) {\n        for (var i = 0; i < numToRun; i++) {\n          var callback = toRun[i];\n          callback(frameData);\n          if (toKeepAlive.has(callback)) {\n            step.schedule(callback);\n            runNextFrame();\n          }\n        }\n      }\n      isProcessing = false;\n    }\n  };\n  return step;\n}\nexport { createRenderStep };","map":{"version":3,"names":["createRenderStep","runNextFrame","toRun","toRunNextFrame","numToRun","isProcessing","toKeepAlive","WeakSet","step","schedule","callback","keepAlive","immediate","addToCurrentFrame","buffer","add","indexOf","push","length","cancel","index","splice","process","frameData","_a","i","has"],"sources":["C:/LDT/DSP_Management/node_modules/framesync/dist/es/create-render-step.js"],"sourcesContent":["function createRenderStep(runNextFrame) {\n    var toRun = [];\n    var toRunNextFrame = [];\n    var numToRun = 0;\n    var isProcessing = false;\n    var toKeepAlive = new WeakSet();\n    var step = {\n        schedule: function (callback, keepAlive, immediate) {\n            if (keepAlive === void 0) { keepAlive = false; }\n            if (immediate === void 0) { immediate = false; }\n            var addToCurrentFrame = immediate && isProcessing;\n            var buffer = addToCurrentFrame ? toRun : toRunNextFrame;\n            if (keepAlive)\n                toKeepAlive.add(callback);\n            if (buffer.indexOf(callback) === -1) {\n                buffer.push(callback);\n                if (addToCurrentFrame && isProcessing)\n                    numToRun = toRun.length;\n            }\n            return callback;\n        },\n        cancel: function (callback) {\n            var index = toRunNextFrame.indexOf(callback);\n            if (index !== -1)\n                toRunNextFrame.splice(index, 1);\n            toKeepAlive.delete(callback);\n        },\n        process: function (frameData) {\n            var _a;\n            isProcessing = true;\n            _a = [toRunNextFrame, toRun], toRun = _a[0], toRunNextFrame = _a[1];\n            toRunNextFrame.length = 0;\n            numToRun = toRun.length;\n            if (numToRun) {\n                for (var i = 0; i < numToRun; i++) {\n                    var callback = toRun[i];\n                    callback(frameData);\n                    if (toKeepAlive.has(callback)) {\n                        step.schedule(callback);\n                        runNextFrame();\n                    }\n                }\n            }\n            isProcessing = false;\n        },\n    };\n    return step;\n}\n\nexport { createRenderStep };\n"],"mappings":"AAAA,SAASA,gBAAgBA,CAACC,YAAY,EAAE;EACpC,IAAIC,KAAK,GAAG,EAAE;EACd,IAAIC,cAAc,GAAG,EAAE;EACvB,IAAIC,QAAQ,GAAG,CAAC;EAChB,IAAIC,YAAY,GAAG,KAAK;EACxB,IAAIC,WAAW,GAAG,IAAIC,OAAO,CAAC,CAAC;EAC/B,IAAIC,IAAI,GAAG;IACPC,QAAQ,EAAE,SAAVA,QAAQA,CAAYC,QAAQ,EAAEC,SAAS,EAAEC,SAAS,EAAE;MAChD,IAAID,SAAS,KAAK,KAAK,CAAC,EAAE;QAAEA,SAAS,GAAG,KAAK;MAAE;MAC/C,IAAIC,SAAS,KAAK,KAAK,CAAC,EAAE;QAAEA,SAAS,GAAG,KAAK;MAAE;MAC/C,IAAIC,iBAAiB,GAAGD,SAAS,IAAIP,YAAY;MACjD,IAAIS,MAAM,GAAGD,iBAAiB,GAAGX,KAAK,GAAGC,cAAc;MACvD,IAAIQ,SAAS,EACTL,WAAW,CAACS,GAAG,CAACL,QAAQ,CAAC;MAC7B,IAAII,MAAM,CAACE,OAAO,CAACN,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE;QACjCI,MAAM,CAACG,IAAI,CAACP,QAAQ,CAAC;QACrB,IAAIG,iBAAiB,IAAIR,YAAY,EACjCD,QAAQ,GAAGF,KAAK,CAACgB,MAAM;MAC/B;MACA,OAAOR,QAAQ;IACnB,CAAC;IACDS,MAAM,EAAE,SAARA,MAAMA,CAAYT,QAAQ,EAAE;MACxB,IAAIU,KAAK,GAAGjB,cAAc,CAACa,OAAO,CAACN,QAAQ,CAAC;MAC5C,IAAIU,KAAK,KAAK,CAAC,CAAC,EACZjB,cAAc,CAACkB,MAAM,CAACD,KAAK,EAAE,CAAC,CAAC;MACnCd,WAAW,UAAO,CAACI,QAAQ,CAAC;IAChC,CAAC;IACDY,OAAO,EAAE,SAATA,OAAOA,CAAYC,SAAS,EAAE;MAC1B,IAAIC,EAAE;MACNnB,YAAY,GAAG,IAAI;MACnBmB,EAAE,GAAG,CAACrB,cAAc,EAAED,KAAK,CAAC,EAAEA,KAAK,GAAGsB,EAAE,CAAC,CAAC,CAAC,EAAErB,cAAc,GAAGqB,EAAE,CAAC,CAAC,CAAC;MACnErB,cAAc,CAACe,MAAM,GAAG,CAAC;MACzBd,QAAQ,GAAGF,KAAK,CAACgB,MAAM;MACvB,IAAId,QAAQ,EAAE;QACV,KAAK,IAAIqB,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGrB,QAAQ,EAAEqB,CAAC,EAAE,EAAE;UAC/B,IAAIf,QAAQ,GAAGR,KAAK,CAACuB,CAAC,CAAC;UACvBf,QAAQ,CAACa,SAAS,CAAC;UACnB,IAAIjB,WAAW,CAACoB,GAAG,CAAChB,QAAQ,CAAC,EAAE;YAC3BF,IAAI,CAACC,QAAQ,CAACC,QAAQ,CAAC;YACvBT,YAAY,CAAC,CAAC;UAClB;QACJ;MACJ;MACAI,YAAY,GAAG,KAAK;IACxB;EACJ,CAAC;EACD,OAAOG,IAAI;AACf;AAEA,SAASR,gBAAgB","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}