{"dependencies":[{"name":"react","data":{"asyncType":null,"isESMImport":true,"locs":[{"start":{"line":3,"column":0,"index":15},"end":{"line":3,"column":67,"index":82}}],"key":"RtGiGa+/H7VrI7GDQDLhO1UbpU8=","exportNames":["*"],"imports":1}}],"output":[{"data":{"code":"__d(function (global, require, _$$_IMPORT_DEFAULT, _$$_IMPORT_ALL, module, exports, _dependencyMap) {\n 'use client';\n \"use strict\";\n\n Object.defineProperty(exports, '__esModule', {\n value: true\n });\n exports.useReleasingSharedObject = useReleasingSharedObject;\n var _react = require(_dependencyMap[0], \"react\");\n /**\n * Returns a shared object, which is automatically cleaned up when the component is unmounted.\n */\n function useReleasingSharedObject(factory, dependencies) {\n var objectRef = (0, _react.useRef)(null);\n var isFastRefresh = (0, _react.useRef)(false);\n var previousDependencies = (0, _react.useRef)(dependencies);\n if (objectRef.current == null) {\n objectRef.current = factory();\n }\n var object = (0, _react.useMemo)(() => {\n var newObject = objectRef.current;\n var dependenciesAreEqual = previousDependencies.current?.length === dependencies.length && dependencies.every((value, index) => value === previousDependencies.current[index]);\n\n // If the dependencies have changed, release the previous object and create a new one, otherwise this has been called\n // because of an unrelated fast refresh, and we don't want to release the object.\n if (!newObject || !dependenciesAreEqual) {\n objectRef.current?.release();\n newObject = factory();\n objectRef.current = newObject;\n previousDependencies.current = dependencies;\n }\n return newObject;\n }, dependencies);\n (0, _react.useMemo)(() => {\n isFastRefresh.current = true;\n }, []);\n (0, _react.useEffect)(() => {\n isFastRefresh.current = false;\n return () => {\n // This will be called on every fast refresh and on unmount, but we only want to release the object on unmount.\n if (!isFastRefresh.current && objectRef.current) {\n objectRef.current.release();\n }\n };\n }, []);\n return object;\n }\n});","lineCount":48,"map":[[2,2,1,0],[2,14,1,12],[3,2,1,13],[5,2,1,13,"Object"],[5,8,1,13],[5,9,1,13,"defineProperty"],[5,23,1,13],[5,24,1,13,"exports"],[5,31,1,13],[6,4,1,13,"value"],[6,9,1,13],[7,2,1,13],[8,2,10,0,"exports"],[8,9,10,0],[8,10,10,0,"useReleasingSharedObject"],[8,34,10,0],[8,37,10,0,"useReleasingSharedObject"],[8,61,10,0],[9,2,3,0],[9,6,3,0,"_react"],[9,12,3,0],[9,15,3,0,"require"],[9,22,3,0],[9,23,3,0,"_dependencyMap"],[9,37,3,0],[10,2,7,0],[11,0,8,0],[12,0,9,0],[13,2,10,7],[13,11,10,16,"useReleasingSharedObject"],[13,35,10,40,"useReleasingSharedObject"],[13,36,11,2,"factory"],[13,43,11,30],[13,45,12,2,"dependencies"],[13,57,12,30],[13,59,13,17],[14,4,14,2],[14,8,14,8,"objectRef"],[14,17,14,17],[14,20,14,20],[14,24,14,20,"useRef"],[14,30,14,26],[14,31,14,26,"useRef"],[14,37,14,26],[14,39,14,49],[14,43,14,53],[14,44,14,54],[15,4,15,2],[15,8,15,8,"isFastRefresh"],[15,21,15,21],[15,24,15,24],[15,28,15,24,"useRef"],[15,34,15,30],[15,35,15,30,"useRef"],[15,41,15,30],[15,43,15,31],[15,48,15,36],[15,49,15,37],[16,4,16,2],[16,8,16,8,"previousDependencies"],[16,28,16,28],[16,31,16,31],[16,35,16,31,"useRef"],[16,41,16,37],[16,42,16,37,"useRef"],[16,48,16,37],[16,50,16,54,"dependencies"],[16,62,16,66],[16,63,16,67],[17,4,18,2],[17,8,18,6,"objectRef"],[17,17,18,15],[17,18,18,16,"current"],[17,25,18,23],[17,29,18,27],[17,33,18,31],[17,35,18,33],[18,6,19,4,"objectRef"],[18,15,19,13],[18,16,19,14,"current"],[18,23,19,21],[18,26,19,24,"factory"],[18,33,19,31],[18,34,19,32],[18,35,19,33],[19,4,20,2],[20,4,22,2],[20,8,22,8,"object"],[20,14,22,14],[20,17,22,17],[20,21,22,17,"useMemo"],[20,27,22,24],[20,28,22,24,"useMemo"],[20,35,22,24],[20,37,22,25],[20,43,22,31],[21,6,23,4],[21,10,23,8,"newObject"],[21,19,23,17],[21,22,23,20,"objectRef"],[21,31,23,29],[21,32,23,30,"current"],[21,39,23,37],[22,6,24,4],[22,10,24,10,"dependenciesAreEqual"],[22,30,24,30],[22,33,25,6,"previousDependencies"],[22,53,25,26],[22,54,25,27,"current"],[22,61,25,34],[22,63,25,36,"length"],[22,69,25,42],[22,74,25,47,"dependencies"],[22,86,25,59],[22,87,25,60,"length"],[22,93,25,66],[22,97,26,6,"dependencies"],[22,109,26,18],[22,110,26,19,"every"],[22,115,26,24],[22,116,26,25],[22,117,26,26,"value"],[22,122,26,31],[22,124,26,33,"index"],[22,129,26,38],[22,134,26,43,"value"],[22,139,26,48],[22,144,26,53,"previousDependencies"],[22,164,26,73],[22,165,26,74,"current"],[22,172,26,81],[22,173,26,82,"index"],[22,178,26,87],[22,179,26,88],[22,180,26,89],[24,6,28,4],[25,6,29,4],[26,6,30,4],[26,10,30,8],[26,11,30,9,"newObject"],[26,20,30,18],[26,24,30,22],[26,25,30,23,"dependenciesAreEqual"],[26,45,30,43],[26,47,30,45],[27,8,31,6,"objectRef"],[27,17,31,15],[27,18,31,16,"current"],[27,25,31,23],[27,27,31,25,"release"],[27,34,31,32],[27,35,31,33],[27,36,31,34],[28,8,32,6,"newObject"],[28,17,32,15],[28,20,32,18,"factory"],[28,27,32,25],[28,28,32,26],[28,29,32,27],[29,8,33,6,"objectRef"],[29,17,33,15],[29,18,33,16,"current"],[29,25,33,23],[29,28,33,26,"newObject"],[29,37,33,35],[30,8,34,6,"previousDependencies"],[30,28,34,26],[30,29,34,27,"current"],[30,36,34,34],[30,39,34,37,"dependencies"],[30,51,34,49],[31,6,35,4],[32,6,36,4],[32,13,36,11,"newObject"],[32,22,36,20],[33,4,37,2],[33,5,37,3],[33,7,37,5,"dependencies"],[33,19,37,17],[33,20,37,18],[34,4,39,2],[34,8,39,2,"useMemo"],[34,14,39,9],[34,15,39,9,"useMemo"],[34,22,39,9],[34,24,39,10],[34,30,39,16],[35,6,40,4,"isFastRefresh"],[35,19,40,17],[35,20,40,18,"current"],[35,27,40,25],[35,30,40,28],[35,34,40,32],[36,4,41,2],[36,5,41,3],[36,7,41,5],[36,9,41,7],[36,10,41,8],[37,4,43,2],[37,8,43,2,"useEffect"],[37,14,43,11],[37,15,43,11,"useEffect"],[37,24,43,11],[37,26,43,12],[37,32,43,18],[38,6,44,4,"isFastRefresh"],[38,19,44,17],[38,20,44,18,"current"],[38,27,44,25],[38,30,44,28],[38,35,44,33],[39,6,46,4],[39,13,46,11],[39,19,46,17],[40,8,47,6],[41,8,48,6],[41,12,48,10],[41,13,48,11,"isFastRefresh"],[41,26,48,24],[41,27,48,25,"current"],[41,34,48,32],[41,38,48,36,"objectRef"],[41,47,48,45],[41,48,48,46,"current"],[41,55,48,53],[41,57,48,55],[42,10,49,8,"objectRef"],[42,19,49,17],[42,20,49,18,"current"],[42,27,49,25],[42,28,49,26,"release"],[42,35,49,33],[42,36,49,34],[42,37,49,35],[43,8,50,6],[44,6,51,4],[44,7,51,5],[45,4,52,2],[45,5,52,3],[45,7,52,5],[45,9,52,7],[45,10,52,8],[46,4,54,2],[46,11,54,9,"object"],[46,17,54,15],[47,2,55,0],[48,0,55,1],[48,3]],"functionMap":{"names":["","useReleasingSharedObject","useMemo$argument_0","dependencies.every$argument_0","useEffect$argument_0",""],"mappings":"AAA;OCS;yBCY;yBCI,+DD;GDW;UCE;GDE;YGE;WCG;KDK;GHC;CDG"},"hasCjsExports":false},"type":"js/module"}]}