{"dependencies":[{"name":"@babel/runtime/helpers/slicedToArray","data":{"asyncType":null,"isESMImport":false,"locs":[],"key":"5y7e5+zC7teYEEC6niD9f5zII1M=","exportNames":["*"],"imports":1}},{"name":"nanoid/non-secure","data":{"asyncType":null,"isESMImport":true,"locs":[{"start":{"line":3,"column":0,"index":15},"end":{"line":3,"column":43,"index":58}}],"key":"SN8WVal79eAEDQEpzmVqVAy5JJs=","exportNames":["*"],"imports":1}},{"name":"react","data":{"asyncType":null,"isESMImport":true,"locs":[{"start":{"line":4,"column":0,"index":59},"end":{"line":4,"column":31,"index":90}}],"key":"RtGiGa+/H7VrI7GDQDLhO1UbpU8=","exportNames":["*"],"imports":1}},{"name":"use-latest-callback","data":{"asyncType":null,"isESMImport":true,"locs":[{"start":{"line":5,"column":0,"index":91},"end":{"line":5,"column":52,"index":143}}],"key":"2ER/r3Agt+5SFwaFR8HXg24Rpu4=","exportNames":["*"],"imports":1}},{"name":"./useNavigation.js","data":{"asyncType":null,"isESMImport":true,"locs":[{"start":{"line":6,"column":0,"index":144},"end":{"line":6,"column":51,"index":195}}],"key":"QYUBGacr5qSJ4R+u3laZK0wRG3s=","exportNames":["*"],"imports":1}},{"name":"./usePreventRemoveContext.js","data":{"asyncType":null,"isESMImport":true,"locs":[{"start":{"line":7,"column":0,"index":196},"end":{"line":7,"column":71,"index":267}}],"key":"fit0mV8CHul80P26JDJV2V6NBHA=","exportNames":["*"],"imports":1}},{"name":"./useRoute.js","data":{"asyncType":null,"isESMImport":true,"locs":[{"start":{"line":8,"column":0,"index":268},"end":{"line":8,"column":41,"index":309}}],"key":"099N+Zv4K9pUFNBPk2MtNNMStD8=","exportNames":["*"],"imports":1}}],"output":[{"data":{"code":"__d(function (global, require, _$$_IMPORT_DEFAULT, _$$_IMPORT_ALL, module, exports, _dependencyMap) {\n \"use strict\";\n\n Object.defineProperty(exports, '__esModule', {\n value: true\n });\n function _interopDefault(e) {\n return e && e.__esModule ? e : {\n default: e\n };\n }\n function _interopNamespace(e) {\n if (e && e.__esModule) return e;\n var n = {};\n if (e) Object.keys(e).forEach(function (k) {\n var d = Object.getOwnPropertyDescriptor(e, k);\n Object.defineProperty(n, k, d.get ? d : {\n enumerable: true,\n get: function () {\n return e[k];\n }\n });\n });\n n.default = e;\n return n;\n }\n exports.usePreventRemove = usePreventRemove;\n var _babelRuntimeHelpersSlicedToArray = require(_dependencyMap[0], \"@babel/runtime/helpers/slicedToArray\");\n var _slicedToArray = _interopDefault(_babelRuntimeHelpersSlicedToArray);\n var _nanoidNonSecure = require(_dependencyMap[1], \"nanoid/non-secure\");\n var _react = require(_dependencyMap[2], \"react\");\n var React = _interopNamespace(_react);\n var _useLatestCallback = require(_dependencyMap[3], \"use-latest-callback\");\n var useLatestCallback = _interopDefault(_useLatestCallback);\n var _useNavigationJs = require(_dependencyMap[4], \"./useNavigation.js\");\n var _usePreventRemoveContextJs = require(_dependencyMap[5], \"./usePreventRemoveContext.js\");\n var _useRouteJs = require(_dependencyMap[6], \"./useRoute.js\");\n /**\n * Hook to prevent screen from being removed. Can be used to prevent users from leaving the screen.\n *\n * @param preventRemove Boolean indicating whether to prevent screen from being removed.\n * @param callback Function which is executed when screen was prevented from being removed.\n */\n function usePreventRemove(preventRemove, callback) {\n var _React$useState = React.useState(function () {\n return (0, _nanoidNonSecure.nanoid)();\n }),\n _React$useState2 = (0, _slicedToArray.default)(_React$useState, 1),\n id = _React$useState2[0];\n var navigation = (0, _useNavigationJs.useNavigation)();\n var _useRoute = (0, _useRouteJs.useRoute)(),\n routeKey = _useRoute.key;\n var _usePreventRemoveCont = (0, _usePreventRemoveContextJs.usePreventRemoveContext)(),\n setPreventRemove = _usePreventRemoveCont.setPreventRemove;\n React.useEffect(function () {\n setPreventRemove(id, routeKey, preventRemove);\n return function () {\n setPreventRemove(id, routeKey, false);\n };\n }, [setPreventRemove, id, routeKey, preventRemove]);\n var beforeRemoveListener = (0, useLatestCallback.default)(function (e) {\n if (!preventRemove) {\n return;\n }\n e.preventDefault();\n callback({\n data: e.data\n });\n });\n React.useEffect(function () {\n return navigation == null ? void 0 : navigation.addListener('beforeRemove', beforeRemoveListener);\n }, [navigation, beforeRemoveListener]);\n }\n});","lineCount":74,"map":[[2,2,1,0],[2,14,1,12],[4,2,1,13,"Object"],[4,8,1,13],[4,9,1,13,"defineProperty"],[4,23,1,13],[4,24,1,13,"exports"],[4,31,1,13],[5,4,1,13,"value"],[5,9,1,13],[6,2,1,13],[7,2,1,13],[7,11,1,13,"_interopDefault"],[7,27,1,13,"e"],[7,28,1,13],[8,4,1,13],[8,11,1,13,"e"],[8,12,1,13],[8,16,1,13,"e"],[8,17,1,13],[8,18,1,13,"__esModule"],[8,28,1,13],[8,31,1,13,"e"],[8,32,1,13],[9,6,1,13,"default"],[9,13,1,13],[9,15,1,13,"e"],[10,4,1,13],[11,2,1,13],[12,2,1,13],[12,11,1,13,"_interopNamespace"],[12,29,1,13,"e"],[12,30,1,13],[13,4,1,13],[13,8,1,13,"e"],[13,9,1,13],[13,13,1,13,"e"],[13,14,1,13],[13,15,1,13,"__esModule"],[13,25,1,13],[13,34,1,13,"e"],[13,35,1,13],[14,4,1,13],[14,8,1,13,"n"],[14,9,1,13],[15,4,1,13],[15,8,1,13,"e"],[15,9,1,13],[15,11,1,13,"Object"],[15,17,1,13],[15,18,1,13,"keys"],[15,22,1,13],[15,23,1,13,"e"],[15,24,1,13],[15,26,1,13,"forEach"],[15,33,1,13],[15,44,1,13,"k"],[15,45,1,13],[16,6,1,13],[16,10,1,13,"d"],[16,11,1,13],[16,14,1,13,"Object"],[16,20,1,13],[16,21,1,13,"getOwnPropertyDescriptor"],[16,45,1,13],[16,46,1,13,"e"],[16,47,1,13],[16,49,1,13,"k"],[16,50,1,13],[17,6,1,13,"Object"],[17,12,1,13],[17,13,1,13,"defineProperty"],[17,27,1,13],[17,28,1,13,"n"],[17,29,1,13],[17,31,1,13,"k"],[17,32,1,13],[17,34,1,13,"d"],[17,35,1,13],[17,36,1,13,"get"],[17,39,1,13],[17,42,1,13,"d"],[17,43,1,13],[18,8,1,13,"enumerable"],[18,18,1,13],[19,8,1,13,"get"],[19,11,1,13],[19,22,1,13,"get"],[19,23,1,13],[20,10,1,13],[20,17,1,13,"e"],[20,18,1,13],[20,19,1,13,"k"],[20,20,1,13],[21,8,1,13],[22,6,1,13],[23,4,1,13],[24,4,1,13,"n"],[24,5,1,13],[24,6,1,13,"default"],[24,13,1,13],[24,16,1,13,"e"],[24,17,1,13],[25,4,1,13],[25,11,1,13,"n"],[25,12,1,13],[26,2,1,13],[27,2,16,0,"exports"],[27,9,16,0],[27,10,16,0,"usePreventRemove"],[27,26,16,0],[27,29,16,0,"usePreventRemove"],[27,45,16,0],[28,2,41,1],[28,6,41,1,"_babelRuntimeHelpersSlicedToArray"],[28,39,41,1],[28,42,41,1,"require"],[28,49,41,1],[28,50,41,1,"_dependencyMap"],[28,64,41,1],[29,2,41,1],[29,6,41,1,"_slicedToArray"],[29,20,41,1],[29,23,41,1,"_interopDefault"],[29,38,41,1],[29,39,41,1,"_babelRuntimeHelpersSlicedToArray"],[29,72,41,1],[30,2,3,0],[30,6,3,0,"_nanoidNonSecure"],[30,22,3,0],[30,25,3,0,"require"],[30,32,3,0],[30,33,3,0,"_dependencyMap"],[30,47,3,0],[31,2,4,0],[31,6,4,0,"_react"],[31,12,4,0],[31,15,4,0,"require"],[31,22,4,0],[31,23,4,0,"_dependencyMap"],[31,37,4,0],[32,2,4,0],[32,6,4,0,"React"],[32,11,4,0],[32,14,4,0,"_interopNamespace"],[32,31,4,0],[32,32,4,0,"_react"],[32,38,4,0],[33,2,5,0],[33,6,5,0,"_useLatestCallback"],[33,24,5,0],[33,27,5,0,"require"],[33,34,5,0],[33,35,5,0,"_dependencyMap"],[33,49,5,0],[34,2,5,0],[34,6,5,0,"useLatestCallback"],[34,23,5,0],[34,26,5,0,"_interopDefault"],[34,41,5,0],[34,42,5,0,"_useLatestCallback"],[34,60,5,0],[35,2,6,0],[35,6,6,0,"_useNavigationJs"],[35,22,6,0],[35,25,6,0,"require"],[35,32,6,0],[35,33,6,0,"_dependencyMap"],[35,47,6,0],[36,2,7,0],[36,6,7,0,"_usePreventRemoveContextJs"],[36,32,7,0],[36,35,7,0,"require"],[36,42,7,0],[36,43,7,0,"_dependencyMap"],[36,57,7,0],[37,2,8,0],[37,6,8,0,"_useRouteJs"],[37,17,8,0],[37,20,8,0,"require"],[37,27,8,0],[37,28,8,0,"_dependencyMap"],[37,42,8,0],[38,2,10,0],[39,0,11,0],[40,0,12,0],[41,0,13,0],[42,0,14,0],[43,0,15,0],[44,2,16,7],[44,11,16,16,"usePreventRemove"],[44,27,16,32,"usePreventRemove"],[44,28,16,33,"preventRemove"],[44,41,16,46],[44,43,16,48,"callback"],[44,51,16,56],[44,53,16,58],[45,4,17,2],[45,8,17,2,"_React$useState"],[45,23,17,2],[45,26,17,15,"React"],[45,31,17,20],[45,32,17,21,"useState"],[45,40,17,29],[45,41,17,30],[46,8,17,30],[46,15,17,36],[46,19,17,36,"nanoid"],[46,35,17,42],[46,36,17,42,"nanoid"],[46,42,17,42],[46,44,17,43],[46,45,17,44],[47,6,17,44],[47,8,17,45],[48,6,17,45,"_React$useState2"],[48,22,17,45],[48,29,17,45,"_slicedToArray"],[48,43,17,45],[48,44,17,45,"default"],[48,51,17,45],[48,53,17,45,"_React$useState"],[48,68,17,45],[49,6,17,9,"id"],[49,8,17,11],[49,11,17,11,"_React$useState2"],[49,27,17,11],[50,4,18,2],[50,8,18,8,"navigation"],[50,18,18,18],[50,21,18,21],[50,25,18,21,"useNavigation"],[50,41,18,34],[50,42,18,34,"useNavigation"],[50,55,18,34],[50,57,18,35],[50,58,18,36],[51,4,19,2],[51,8,19,2,"_useRoute"],[51,17,19,2],[51,20,21,6],[51,24,21,6,"useRoute"],[51,35,21,14],[51,36,21,14,"useRoute"],[51,44,21,14],[51,46,21,15],[51,47,21,16],[52,6,20,9,"routeKey"],[52,14,20,17],[52,17,20,17,"_useRoute"],[52,26,20,17],[52,27,20,4,"key"],[52,30,20,7],[53,4,22,2],[53,8,22,2,"_usePreventRemoveCont"],[53,29,22,2],[53,32,24,6],[53,36,24,6,"usePreventRemoveContext"],[53,62,24,29],[53,63,24,29,"usePreventRemoveContext"],[53,86,24,29],[53,88,24,30],[53,89,24,31],[54,6,23,4,"setPreventRemove"],[54,22,23,20],[54,25,23,20,"_usePreventRemoveCont"],[54,46,23,20],[54,47,23,4,"setPreventRemove"],[54,63,23,20],[55,4,25,2,"React"],[55,9,25,7],[55,10,25,8,"useEffect"],[55,19,25,17],[55,20,25,18],[55,32,25,24],[56,6,26,4,"setPreventRemove"],[56,22,26,20],[56,23,26,21,"id"],[56,25,26,23],[56,27,26,25,"routeKey"],[56,35,26,33],[56,37,26,35,"preventRemove"],[56,50,26,48],[56,51,26,49],[57,6,27,4],[57,13,27,11],[57,25,27,17],[58,8,28,6,"setPreventRemove"],[58,24,28,22],[58,25,28,23,"id"],[58,27,28,25],[58,29,28,27,"routeKey"],[58,37,28,35],[58,39,28,37],[58,44,28,42],[58,45,28,43],[59,6,29,4],[59,7,29,5],[60,4,30,2],[60,5,30,3],[60,7,30,5],[60,8,30,6,"setPreventRemove"],[60,24,30,22],[60,26,30,24,"id"],[60,28,30,26],[60,30,30,28,"routeKey"],[60,38,30,36],[60,40,30,38,"preventRemove"],[60,53,30,51],[60,54,30,52],[60,55,30,53],[61,4,31,2],[61,8,31,8,"beforeRemoveListener"],[61,28,31,28],[61,31,31,31],[61,35,31,31,"useLatestCallback"],[61,52,31,48],[61,53,31,48,"default"],[61,60,31,48],[61,62,31,49],[61,72,31,49,"e"],[61,73,31,50],[61,75,31,54],[62,6,32,4],[62,10,32,8],[62,11,32,9,"preventRemove"],[62,24,32,22],[62,26,32,24],[63,8,33,6],[64,6,34,4],[65,6,35,4,"e"],[65,7,35,5],[65,8,35,6,"preventDefault"],[65,22,35,20],[65,23,35,21],[65,24,35,22],[66,6,36,4,"callback"],[66,14,36,12],[66,15,36,13],[67,8,37,6,"data"],[67,12,37,10],[67,14,37,12,"e"],[67,15,37,13],[67,16,37,14,"data"],[68,6,38,4],[68,7,38,5],[68,8,38,6],[69,4,39,2],[69,5,39,3],[69,6,39,4],[70,4,40,2,"React"],[70,9,40,7],[70,10,40,8,"useEffect"],[70,19,40,17],[70,20,40,18],[71,6,40,18],[71,13,40,24,"navigation"],[71,23,40,34],[71,43,40,24,"navigation"],[71,53,40,34],[71,54,40,36,"addListener"],[71,65,40,47],[71,66,40,48],[71,80,40,62],[71,82,40,64,"beforeRemoveListener"],[71,102,40,84],[71,103,40,85],[72,4,40,85],[72,7,40,87],[72,8,40,88,"navigation"],[72,18,40,98],[72,20,40,100,"beforeRemoveListener"],[72,40,40,120],[72,41,40,121],[72,42,40,122],[73,2,41,0],[74,0,41,1],[74,3]],"functionMap":{"names":["","usePreventRemove","React.useState$argument_0","React.useEffect$argument_0","","useLatestCallback$argument_0"],"mappings":"AAA;OCe;8BCC,cD;kBEQ;WCE;KDE;GFC;iDIC;GJQ;kBEC,mEF;CDC"},"hasCjsExports":false},"type":"js/module"}]}