{"version":3,"file":"@react-dnd-BotG0Rej.js","sources":["../../node_modules/@react-dnd/invariant/dist/index.js","../../node_modules/@react-dnd/asap/dist/makeRequestCall.js","../../node_modules/@react-dnd/asap/dist/AsapQueue.js","../../node_modules/@react-dnd/asap/dist/RawTask.js","../../node_modules/@react-dnd/asap/dist/TaskFactory.js","../../node_modules/@react-dnd/asap/dist/asap.js","../../node_modules/@react-dnd/shallowequal/dist/index.js"],"sourcesContent":["/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */ export function invariant(condition, format, ...args) {\n if (isProduction()) {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n if (!condition) {\n let error;\n if (format === undefined) {\n error = new Error('Minified exception occurred; use the non-minified dev environment ' + 'for the full error message and additional helpful warnings.');\n } else {\n let argIndex = 0;\n error = new Error(format.replace(/%s/g, function() {\n return args[argIndex++];\n }));\n error.name = 'Invariant Violation';\n }\n error.framesToPop = 1 // we don't care about invariant's own frame\n ;\n throw error;\n }\n}\nfunction isProduction() {\n return typeof process !== 'undefined' && process.env['NODE_ENV'] === 'production';\n}\n\n//# sourceMappingURL=index.js.map","// Safari 6 and 6.1 for desktop, iPad, and iPhone are the only browsers that\n// have WebKitMutationObserver but not un-prefixed MutationObserver.\n// Must use `global` or `self` instead of `window` to work in both frames and web\n// workers. `global` is a provision of Browserify, Mr, Mrs, or Mop.\n/* globals self */ const scope = typeof global !== 'undefined' ? global : self;\nconst BrowserMutationObserver = scope.MutationObserver || scope.WebKitMutationObserver;\nexport function makeRequestCallFromTimer(callback) {\n return function requestCall() {\n // We dispatch a timeout with a specified delay of 0 for engines that\n // can reliably accommodate that request. This will usually be snapped\n // to a 4 milisecond delay, but once we're flushing, there's no delay\n // between events.\n const timeoutHandle = setTimeout(handleTimer, 0);\n // However, since this timer gets frequently dropped in Firefox\n // workers, we enlist an interval handle that will try to fire\n // an event 20 times per second until it succeeds.\n const intervalHandle = setInterval(handleTimer, 50);\n function handleTimer() {\n // Whichever timer succeeds will cancel both timers and\n // execute the callback.\n clearTimeout(timeoutHandle);\n clearInterval(intervalHandle);\n callback();\n }\n };\n}\n// To request a high priority event, we induce a mutation observer by toggling\n// the text of a text node between \"1\" and \"-1\".\nexport function makeRequestCallFromMutationObserver(callback) {\n let toggle = 1;\n const observer = new BrowserMutationObserver(callback);\n const node = document.createTextNode('');\n observer.observe(node, {\n characterData: true\n });\n return function requestCall() {\n toggle = -toggle;\n node.data = toggle;\n };\n}\nexport const makeRequestCall = typeof BrowserMutationObserver === 'function' ? // reliably everywhere they are implemented.\n// They are implemented in all modern browsers.\n//\n// - Android 4-4.3\n// - Chrome 26-34\n// - Firefox 14-29\n// - Internet Explorer 11\n// - iPad Safari 6-7.1\n// - iPhone Safari 7-7.1\n// - Safari 6-7\nmakeRequestCallFromMutationObserver : // task queue, are implemented in Internet Explorer 10, Safari 5.0-1, and Opera\n// 11-12, and in web workers in many engines.\n// Although message channels yield to any queued rendering and IO tasks, they\n// would be better than imposing the 4ms delay of timers.\n// However, they do not work reliably in Internet Explorer or Safari.\n// Internet Explorer 10 is the only browser that has setImmediate but does\n// not have MutationObservers.\n// Although setImmediate yields to the browser's renderer, it would be\n// preferrable to falling back to setTimeout since it does not have\n// the minimum 4ms penalty.\n// Unfortunately there appears to be a bug in Internet Explorer 10 Mobile (and\n// Desktop to a lesser extent) that renders both setImmediate and\n// MessageChannel useless for the purposes of ASAP.\n// https://github.com/kriskowal/q/issues/396\n// Timers are implemented universally.\n// We fall back to timers in workers in most engines, and in foreground\n// contexts in the following browsers.\n// However, note that even this simple case requires nuances to operate in a\n// broad spectrum of browsers.\n//\n// - Firefox 3-13\n// - Internet Explorer 6-9\n// - iPad Safari 4.3\n// - Lynx 2.8.7\nmakeRequestCallFromTimer;\n\n//# sourceMappingURL=makeRequestCall.js.map","/* eslint-disable no-restricted-globals, @typescript-eslint/ban-ts-comment, @typescript-eslint/no-unused-vars, @typescript-eslint/no-non-null-assertion */ import { makeRequestCall, makeRequestCallFromTimer } from './makeRequestCall.js';\nexport class AsapQueue {\n // Use the fastest means possible to execute a task in its own turn, with\n // priority over other events including IO, animation, reflow, and redraw\n // events in browsers.\n //\n // An exception thrown by a task will permanently interrupt the processing of\n // subsequent tasks. The higher level `asap` function ensures that if an\n // exception is thrown by a task, that the task queue will continue flushing as\n // soon as possible, but if you use `rawAsap` directly, you are responsible to\n // either ensure that no exceptions are thrown from your task, or to manually\n // call `rawAsap.requestFlush` if an exception is thrown.\n enqueueTask(task) {\n const { queue: q , requestFlush } = this;\n if (!q.length) {\n requestFlush();\n this.flushing = true;\n }\n // Equivalent to push, but avoids a function call.\n q[q.length] = task;\n }\n constructor(){\n this.queue = [];\n // We queue errors to ensure they are thrown in right order (FIFO).\n // Array-as-queue is good enough here, since we are just dealing with exceptions.\n this.pendingErrors = [];\n // Once a flush has been requested, no further calls to `requestFlush` are\n // necessary until the next `flush` completes.\n // @ts-ignore\n this.flushing = false;\n // The position of the next task to execute in the task queue. This is\n // preserved between calls to `flush` so that it can be resumed if\n // a task throws an exception.\n this.index = 0;\n // If a task schedules additional tasks recursively, the task queue can grow\n // unbounded. To prevent memory exhaustion, the task queue will periodically\n // truncate already-completed tasks.\n this.capacity = 1024;\n // The flush function processes all tasks that have been scheduled with\n // `rawAsap` unless and until one of those tasks throws an exception.\n // If a task throws an exception, `flush` ensures that its state will remain\n // consistent and will resume where it left off when called again.\n // However, `flush` does not make any arrangements to be called again if an\n // exception is thrown.\n this.flush = ()=>{\n const { queue: q } = this;\n while(this.index < q.length){\n const currentIndex = this.index;\n // Advance the index before calling the task. This ensures that we will\n // begin flushing on the next task the task throws an error.\n this.index++;\n q[currentIndex].call();\n // Prevent leaking memory for long chains of recursive calls to `asap`.\n // If we call `asap` within tasks scheduled by `asap`, the queue will\n // grow, but to avoid an O(n) walk for every task we execute, we don't\n // shift tasks off the queue after they have been executed.\n // Instead, we periodically shift 1024 tasks off the queue.\n if (this.index > this.capacity) {\n // Manually shift all values starting at the index back to the\n // beginning of the queue.\n for(let scan = 0, newLength = q.length - this.index; scan < newLength; scan++){\n q[scan] = q[scan + this.index];\n }\n q.length -= this.index;\n this.index = 0;\n }\n }\n q.length = 0;\n this.index = 0;\n this.flushing = false;\n };\n // In a web browser, exceptions are not fatal. However, to avoid\n // slowing down the queue of pending tasks, we rethrow the error in a\n // lower priority turn.\n this.registerPendingError = (err)=>{\n this.pendingErrors.push(err);\n this.requestErrorThrow();\n };\n // `requestFlush` requests that the high priority event queue be flushed as\n // soon as possible.\n // This is useful to prevent an error thrown in a task from stalling the event\n // queue if the exception handled by Node.js’s\n // `process.on(\"uncaughtException\")` or by a domain.\n // `requestFlush` is implemented using a strategy based on data collected from\n // every available SauceLabs Selenium web driver worker at time of writing.\n // https://docs.google.com/spreadsheets/d/1mG-5UYGup5qxGdEMWkhP6BWCz053NUb2E1QoUTU16uA/edit#gid=783724593\n this.requestFlush = makeRequestCall(this.flush);\n this.requestErrorThrow = makeRequestCallFromTimer(()=>{\n // Throw first error\n if (this.pendingErrors.length) {\n throw this.pendingErrors.shift();\n }\n });\n }\n} // The message channel technique was discovered by Malte Ubl and was the\n // original foundation for this library.\n // http://www.nonblocking.io/2011/06/windownexttick.html\n // Safari 6.0.5 (at least) intermittently fails to create message ports on a\n // page's first load. Thankfully, this version of Safari supports\n // MutationObservers, so we don't need to fall back in that case.\n // function makeRequestCallFromMessageChannel(callback) {\n // var channel = new MessageChannel();\n // channel.port1.onmessage = callback;\n // return function requestCall() {\n // channel.port2.postMessage(0);\n // };\n // }\n // For reasons explained above, we are also unable to use `setImmediate`\n // under any circumstances.\n // Even if we were, there is another bug in Internet Explorer 10.\n // It is not sufficient to assign `setImmediate` to `requestFlush` because\n // `setImmediate` must be called *by name* and therefore must be wrapped in a\n // closure.\n // Never forget.\n // function makeRequestCallFromSetImmediate(callback) {\n // return function requestCall() {\n // setImmediate(callback);\n // };\n // }\n // Safari 6.0 has a problem where timers will get lost while the user is\n // scrolling. This problem does not impact ASAP because Safari 6.0 supports\n // mutation observers, so that implementation is used instead.\n // However, if we ever elect to use timers in Safari, the prevalent work-around\n // is to add a scroll event listener that calls for a flush.\n // `setTimeout` does not call the passed callback if the delay is less than\n // approximately 7 in web workers in Firefox 8 through 18, and sometimes not\n // even then.\n // This is for `asap.js` only.\n // Its name will be periodically randomized to break any code that depends on\n // // its existence.\n // rawAsap.makeRequestCallFromTimer = makeRequestCallFromTimer\n // ASAP was originally a nextTick shim included in Q. This was factored out\n // into this ASAP package. It was later adapted to RSVP which made further\n // amendments. These decisions, particularly to marginalize MessageChannel and\n // to capture the MutationObserver implementation in a closure, were integrated\n // back into ASAP proper.\n // https://github.com/tildeio/rsvp.js/blob/cddf7232546a9cf858524b75cde6f9edf72620a7/lib/rsvp/asap.js\n\n//# sourceMappingURL=AsapQueue.js.map","// `call`, just like a function.\nexport class RawTask {\n call() {\n try {\n this.task && this.task();\n } catch (error) {\n this.onError(error);\n } finally{\n this.task = null;\n this.release(this);\n }\n }\n constructor(onError, release){\n this.onError = onError;\n this.release = release;\n this.task = null;\n }\n}\n\n//# sourceMappingURL=RawTask.js.map","import { RawTask } from './RawTask.js';\nexport class TaskFactory {\n create(task) {\n const tasks = this.freeTasks;\n const t1 = tasks.length ? tasks.pop() : new RawTask(this.onError, (t)=>tasks[tasks.length] = t\n );\n t1.task = task;\n return t1;\n }\n constructor(onError){\n this.onError = onError;\n this.freeTasks = [];\n }\n}\n\n//# sourceMappingURL=TaskFactory.js.map","import { AsapQueue } from './AsapQueue.js';\nimport { TaskFactory } from './TaskFactory.js';\nconst asapQueue = new AsapQueue();\nconst taskFactory = new TaskFactory(asapQueue.registerPendingError);\n/**\n * Calls a task as soon as possible after returning, in its own event, with priority\n * over other events like animation, reflow, and repaint. An error thrown from an\n * event will not interrupt, nor even substantially slow down the processing of\n * other events, but will be rather postponed to a lower priority event.\n * @param {{call}} task A callable object, typically a function that takes no\n * arguments.\n */ export function asap(task) {\n asapQueue.enqueueTask(taskFactory.create(task));\n}\n\n//# sourceMappingURL=asap.js.map","export function shallowEqual(objA, objB, compare, compareContext) {\n let compareResult = compare ? compare.call(compareContext, objA, objB) : void 0;\n if (compareResult !== void 0) {\n return !!compareResult;\n }\n if (objA === objB) {\n return true;\n }\n if (typeof objA !== 'object' || !objA || typeof objB !== 'object' || !objB) {\n return false;\n }\n const keysA = Object.keys(objA);\n const keysB = Object.keys(objB);\n if (keysA.length !== keysB.length) {\n return false;\n }\n const bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);\n // Test for A's keys different from B.\n for(let idx = 0; idx < keysA.length; idx++){\n const key = keysA[idx];\n if (!bHasOwnProperty(key)) {\n return false;\n }\n const valueA = objA[key];\n const valueB = objB[key];\n compareResult = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;\n if (compareResult === false || compareResult === void 0 && valueA !== valueB) {\n return false;\n }\n }\n return true;\n}\n\n//# sourceMappingURL=index.js.map"],"names":["invariant","condition","format","args","isProduction","error","argIndex","scope","BrowserMutationObserver","makeRequestCallFromTimer","callback","timeoutHandle","handleTimer","intervalHandle","makeRequestCallFromMutationObserver","toggle","observer","node","makeRequestCall","AsapQueue","task","q","requestFlush","currentIndex","scan","newLength","err","RawTask","onError","release","TaskFactory","tasks","t1","t","asapQueue","taskFactory","asap","shallowEqual","objA","objB","compare","compareContext","compareResult","keysA","keysB","bHasOwnProperty","idx","key","valueA","valueB"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6]}