{"id":"../src/context.tsx","dependencies":[{"name":"/Users/sebastien/dev/use-theme/tsconfig.json","includedInParent":true,"mtime":1571065850283},{"name":"/Users/sebastien/dev/use-theme/package.json","includedInParent":true,"mtime":1571065859204},{"name":"react","loc":{"line":10,"column":37},"parent":"/Users/sebastien/dev/use-theme/src/context.tsx","resolved":"/Users/sebastien/dev/use-theme/node_modules/react/index.js"},{"name":"./browserTheme","loc":{"line":11,"column":31},"parent":"/Users/sebastien/dev/use-theme/src/context.tsx","resolved":"/Users/sebastien/dev/use-theme/src/browserTheme.ts"},{"name":"./localStorage","loc":{"line":12,"column":31},"parent":"/Users/sebastien/dev/use-theme/src/context.tsx","resolved":"/Users/sebastien/dev/use-theme/src/localStorage.ts"}],"generated":{"js":"\"use strict\";\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { if (!(Symbol.iterator in Object(arr) || Object.prototype.toString.call(arr) === \"[object Arguments]\")) { return; } var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nvar __importStar = this && this.__importStar || function (mod) {\n  if (mod && mod.__esModule) return mod;\n  var result = {};\n  if (mod != null) for (var k in mod) {\n    if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\n  }\n  result[\"default\"] = mod;\n  return result;\n};\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\n\nvar react_1 = __importStar(require(\"react\"));\n\nvar browserTheme_1 = require(\"./browserTheme\");\n\nvar localStorage_1 = require(\"./localStorage\"); // FIXME we have to give createContext a valid initial value even if in this\n// case it will never be used.\n\n\nvar ThemeContext = react_1.createContext([null, null]);\n\nexports.ThemeProvider = function (_ref) {\n  var children = _ref.children;\n\n  var _react_1$useState = react_1.useState(false),\n      _react_1$useState2 = _slicedToArray(_react_1$useState, 2),\n      initialized = _react_1$useState2[0],\n      setInitialized = _react_1$useState2[1];\n\n  var _react_1$useState3 = react_1.useState('light'),\n      _react_1$useState4 = _slicedToArray(_react_1$useState3, 2),\n      theme = _react_1$useState4[0],\n      setTheme = _react_1$useState4[1];\n\n  var updateTheme = react_1.useCallback(function (newTheme) {\n    if (typeof newTheme === 'function') {\n      setTheme(function (currentTheme) {\n        var actualNewTheme = newTheme(currentTheme);\n        localStorage_1.setLocalStorageTheme(actualNewTheme);\n        return actualNewTheme;\n      });\n    } else {\n      localStorage_1.setLocalStorageTheme(newTheme);\n      setTheme(newTheme);\n    }\n  }, [setTheme]);\n  react_1.useEffect(function () {\n    if (!initialized) {\n      setTheme(localStorage_1.getLocalStorageTheme() || browserTheme_1.getBrowserTheme());\n      setInitialized(true);\n    }\n\n    return browserTheme_1.onBrowserThemeChanged(updateTheme);\n  }, [updateTheme, setTheme, initialized, setInitialized]);\n  return initialized ? react_1.default.createElement(ThemeContext.Provider, {\n    value: [theme, updateTheme]\n  }, children) : null;\n};\n\nexports.useTheme = function () {\n  return react_1.useContext(ThemeContext);\n};"},"sourceMaps":{"js":{"mappings":[{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":4}},{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":11}},{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":14}},{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":26}},{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":27}},{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":34}},{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":35}},{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":42}},{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":43}},{"source":"../src/context.tsx","name":null,"original":{"line":1,"column":0},"generated":{"line":25,"column":44}},{"source":"../src/context.tsx","name":null,"original":{"line":11,"column":0},"generated":{"line":27,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":11,"column":0},"generated":{"line":27,"column":4}},{"source":"../src/context.tsx","name":null,"original":{"line":11,"column":0},"generated":{"line":27,"column":18}},{"source":"../src/context.tsx","name":null,"original":{"line":11,"column":0},"generated":{"line":27,"column":21}},{"source":"../src/context.tsx","name":null,"original":{"line":11,"column":0},"generated":{"line":27,"column":28}},{"source":"../src/context.tsx","name":null,"original":{"line":11,"column":0},"generated":{"line":27,"column":29}},{"source":"../src/context.tsx","name":null,"original":{"line":11,"column":0},"generated":{"line":27,"column":45}},{"source":"../src/context.tsx","name":null,"original":{"line":11,"column":0},"generated":{"line":27,"column":46}},{"source":"../src/context.tsx","name":null,"original":{"line":12,"column":0},"generated":{"line":29,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":12,"column":0},"generated":{"line":29,"column":4}},{"source":"../src/context.tsx","name":null,"original":{"line":12,"column":0},"generated":{"line":29,"column":18}},{"source":"../src/context.tsx","name":null,"original":{"line":12,"column":0},"generated":{"line":29,"column":21}},{"source":"../src/context.tsx","name":null,"original":{"line":12,"column":0},"generated":{"line":29,"column":28}},{"source":"../src/context.tsx","name":null,"original":{"line":12,"column":0},"generated":{"line":29,"column":29}},{"source":"../src/context.tsx","name":null,"original":{"line":12,"column":0},"generated":{"line":29,"column":45}},{"source":"../src/context.tsx","name":null,"original":{"line":12,"column":0},"generated":{"line":29,"column":46}},{"source":"../src/context.tsx","name":null,"original":{"line":15,"column":0},"generated":{"line":29,"column":48}},{"source":"../src/context.tsx","name":null,"original":{"line":16,"column":0},"generated":{"line":30,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":0},"generated":{"line":33,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":6},"generated":{"line":33,"column":4}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":18},"generated":{"line":33,"column":16}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":21},"generated":{"line":33,"column":19}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":21},"generated":{"line":33,"column":26}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":21},"generated":{"line":33,"column":27}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":21},"generated":{"line":33,"column":40}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":36},"generated":{"line":33,"column":41}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":37},"generated":{"line":33,"column":42}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":36},"generated":{"line":33,"column":46}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":43},"generated":{"line":33,"column":48}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":36},"generated":{"line":33,"column":52}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":21},"generated":{"line":33,"column":53}},{"source":"../src/context.tsx","name":null,"original":{"line":17,"column":0},"generated":{"line":33,"column":54}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":13},"generated":{"line":35,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":13},"generated":{"line":35,"column":7}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":13},"generated":{"line":35,"column":8}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":13},"generated":{"line":35,"column":21}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":33},"generated":{"line":35,"column":24}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":35,"column":40}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":36,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":36},"generated":{"line":36,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":36,"column":14}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":36},"generated":{"line":36,"column":22}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":36,"column":30}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":38,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":23,"column":40},"generated":{"line":38,"column":26}},{"source":"../src/context.tsx","name":null,"original":{"line":23,"column":40},"generated":{"line":38,"column":33}},{"source":"../src/context.tsx","name":null,"original":{"line":23,"column":40},"generated":{"line":38,"column":34}},{"source":"../src/context.tsx","name":null,"original":{"line":23,"column":40},"generated":{"line":38,"column":42}},{"source":"../src/context.tsx","name":null,"original":{"line":23,"column":49},"generated":{"line":38,"column":43}},{"source":"../src/context.tsx","name":null,"original":{"line":23,"column":40},"generated":{"line":38,"column":48}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":38,"column":49}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":39,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":40,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":23,"column":9},"generated":{"line":40,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":40,"column":17}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":41,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":23,"column":22},"generated":{"line":41,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":41,"column":20}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":43,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":24,"column":28},"generated":{"line":43,"column":27}},{"source":"../src/context.tsx","name":null,"original":{"line":24,"column":28},"generated":{"line":43,"column":34}},{"source":"../src/context.tsx","name":null,"original":{"line":24,"column":28},"generated":{"line":43,"column":35}},{"source":"../src/context.tsx","name":null,"original":{"line":24,"column":28},"generated":{"line":43,"column":43}},{"source":"../src/context.tsx","name":null,"original":{"line":24,"column":48},"generated":{"line":43,"column":44}},{"source":"../src/context.tsx","name":null,"original":{"line":24,"column":28},"generated":{"line":43,"column":51}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":43,"column":52}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":44,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":45,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":24,"column":9},"generated":{"line":45,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":45,"column":11}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":46,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":24,"column":16},"generated":{"line":46,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":50},"generated":{"line":46,"column":14}},{"source":"../src/context.tsx","name":null,"original":{"line":26,"column":2},"generated":{"line":48,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":26,"column":8},"generated":{"line":48,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":26,"column":19},"generated":{"line":48,"column":17}},{"source":"../src/context.tsx","name":null,"original":{"line":26,"column":59},"generated":{"line":48,"column":20}},{"source":"../src/context.tsx","name":null,"original":{"line":26,"column":59},"generated":{"line":48,"column":27}},{"source":"../src/context.tsx","name":null,"original":{"line":26,"column":59},"generated":{"line":48,"column":28}},{"source":"../src/context.tsx","name":null,"original":{"line":26,"column":59},"generated":{"line":48,"column":39}},{"source":"../src/context.tsx","name":null,"original":{"line":27,"column":4},"generated":{"line":48,"column":40}},{"source":"../src/context.tsx","name":null,"original":{"line":27,"column":4},"generated":{"line":48,"column":50}},{"source":"../src/context.tsx","name":null,"original":{"line":27,"column":12},"generated":{"line":48,"column":58}},{"source":"../src/context.tsx","name":null,"original":{"line":27,"column":15},"generated":{"line":48,"column":60}},{"source":"../src/context.tsx","name":null,"original":{"line":28,"column":6},"generated":{"line":49,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":28,"column":10},"generated":{"line":49,"column":8}},{"source":"../src/context.tsx","name":null,"original":{"line":28,"column":17},"generated":{"line":49,"column":15}},{"source":"../src/context.tsx","name":null,"original":{"line":28,"column":10},"generated":{"line":49,"column":23}},{"source":"../src/context.tsx","name":null,"original":{"line":28,"column":30},"generated":{"line":49,"column":28}},{"source":"../src/context.tsx","name":null,"original":{"line":28,"column":6},"generated":{"line":49,"column":38}},{"source":"../src/context.tsx","name":null,"original":{"line":28,"column":42},"generated":{"line":49,"column":40}},{"source":"../src/context.tsx","name":null,"original":{"line":29,"column":8},"generated":{"line":50,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":29,"column":8},"generated":{"line":50,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":29,"column":16},"generated":{"line":50,"column":14}},{"source":"../src/context.tsx","name":null,"original":{"line":29,"column":17},"generated":{"line":50,"column":15}},{"source":"../src/context.tsx","name":null,"original":{"line":29,"column":17},"generated":{"line":50,"column":25}},{"source":"../src/context.tsx","name":null,"original":{"line":29,"column":29},"generated":{"line":50,"column":37}},{"source":"../src/context.tsx","name":null,"original":{"line":29,"column":32},"generated":{"line":50,"column":39}},{"source":"../src/context.tsx","name":null,"original":{"line":30,"column":10},"generated":{"line":51,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":30,"column":16},"generated":{"line":51,"column":12}},{"source":"../src/context.tsx","name":null,"original":{"line":30,"column":30},"generated":{"line":51,"column":26}},{"source":"../src/context.tsx","name":null,"original":{"line":30,"column":33},"generated":{"line":51,"column":29}},{"source":"../src/context.tsx","name":null,"original":{"line":30,"column":41},"generated":{"line":51,"column":37}},{"source":"../src/context.tsx","name":null,"original":{"line":30,"column":42},"generated":{"line":51,"column":38}},{"source":"../src/context.tsx","name":null,"original":{"line":30,"column":41},"generated":{"line":51,"column":50}},{"source":"../src/context.tsx","name":null,"original":{"line":30,"column":10},"generated":{"line":51,"column":51}},{"source":"../src/context.tsx","name":null,"original":{"line":31,"column":10},"generated":{"line":52,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":31,"column":10},"generated":{"line":52,"column":8}},{"source":"../src/context.tsx","name":null,"original":{"line":31,"column":10},"generated":{"line":52,"column":22}},{"source":"../src/context.tsx","name":null,"original":{"line":31,"column":10},"generated":{"line":52,"column":23}},{"source":"../src/context.tsx","name":null,"original":{"line":31,"column":10},"generated":{"line":52,"column":43}},{"source":"../src/context.tsx","name":null,"original":{"line":31,"column":31},"generated":{"line":52,"column":44}},{"source":"../src/context.tsx","name":null,"original":{"line":31,"column":10},"generated":{"line":52,"column":58}},{"source":"../src/context.tsx","name":null,"original":{"line":32,"column":10},"generated":{"line":53,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":32,"column":17},"generated":{"line":53,"column":15}},{"source":"../src/context.tsx","name":null,"original":{"line":32,"column":10},"generated":{"line":53,"column":29}},{"source":"../src/context.tsx","name":null,"original":{"line":33,"column":9},"generated":{"line":54,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":29,"column":16},"generated":{"line":54,"column":7}},{"source":"../src/context.tsx","name":null,"original":{"line":29,"column":8},"generated":{"line":54,"column":8}},{"source":"../src/context.tsx","name":null,"original":{"line":34,"column":7},"generated":{"line":55,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":28,"column":6},"generated":{"line":55,"column":5}},{"source":"../src/context.tsx","name":null,"original":{"line":34,"column":13},"generated":{"line":55,"column":11}},{"source":"../src/context.tsx","name":null,"original":{"line":35,"column":8},"generated":{"line":56,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":35,"column":8},"generated":{"line":56,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":35,"column":8},"generated":{"line":56,"column":20}},{"source":"../src/context.tsx","name":null,"original":{"line":35,"column":8},"generated":{"line":56,"column":21}},{"source":"../src/context.tsx","name":null,"original":{"line":35,"column":8},"generated":{"line":56,"column":41}},{"source":"../src/context.tsx","name":null,"original":{"line":35,"column":29},"generated":{"line":56,"column":42}},{"source":"../src/context.tsx","name":null,"original":{"line":35,"column":8},"generated":{"line":56,"column":50}},{"source":"../src/context.tsx","name":null,"original":{"line":36,"column":8},"generated":{"line":57,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":36,"column":8},"generated":{"line":57,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":36,"column":16},"generated":{"line":57,"column":14}},{"source":"../src/context.tsx","name":null,"original":{"line":36,"column":17},"generated":{"line":57,"column":15}},{"source":"../src/context.tsx","name":null,"original":{"line":36,"column":16},"generated":{"line":57,"column":23}},{"source":"../src/context.tsx","name":null,"original":{"line":36,"column":8},"generated":{"line":57,"column":24}},{"source":"../src/context.tsx","name":null,"original":{"line":37,"column":7},"generated":{"line":58,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":38,"column":5},"generated":{"line":59,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":26,"column":59},"generated":{"line":59,"column":3}},{"source":"../src/context.tsx","name":null,"original":{"line":39,"column":4},"generated":{"line":59,"column":5}},{"source":"../src/context.tsx","name":null,"original":{"line":39,"column":5},"generated":{"line":59,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":39,"column":4},"generated":{"line":59,"column":14}},{"source":"../src/context.tsx","name":null,"original":{"line":26,"column":59},"generated":{"line":59,"column":15}},{"source":"../src/context.tsx","name":null,"original":{"line":26,"column":2},"generated":{"line":59,"column":16}},{"source":"../src/context.tsx","name":null,"original":{"line":42,"column":2},"generated":{"line":60,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":42,"column":2},"generated":{"line":60,"column":2}},{"source":"../src/context.tsx","name":null,"original":{"line":42,"column":2},"generated":{"line":60,"column":9}},{"source":"../src/context.tsx","name":null,"original":{"line":42,"column":2},"generated":{"line":60,"column":10}},{"source":"../src/context.tsx","name":null,"original":{"line":42,"column":2},"generated":{"line":60,"column":19}},{"source":"../src/context.tsx","name":null,"original":{"line":42,"column":12},"generated":{"line":60,"column":20}},{"source":"../src/context.tsx","name":null,"original":{"line":42,"column":17},"generated":{"line":60,"column":32}},{"source":"../src/context.tsx","name":null,"original":{"line":43,"column":4},"generated":{"line":61,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":43,"column":8},"generated":{"line":61,"column":8}},{"source":"../src/context.tsx","name":null,"original":{"line":43,"column":9},"generated":{"line":61,"column":9}},{"source":"../src/context.tsx","name":null,"original":{"line":43,"column":4},"generated":{"line":61,"column":20}},{"source":"../src/context.tsx","name":null,"original":{"line":43,"column":22},"generated":{"line":61,"column":22}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":6},"generated":{"line":62,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":6},"generated":{"line":62,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":14},"generated":{"line":62,"column":14}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":15},"generated":{"line":62,"column":15}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":15},"generated":{"line":62,"column":29}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":15},"generated":{"line":62,"column":30}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":15},"generated":{"line":62,"column":50}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":41},"generated":{"line":62,"column":56}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":41},"generated":{"line":62,"column":70}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":41},"generated":{"line":62,"column":71}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":41},"generated":{"line":62,"column":86}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":14},"generated":{"line":62,"column":88}},{"source":"../src/context.tsx","name":null,"original":{"line":44,"column":6},"generated":{"line":62,"column":89}},{"source":"../src/context.tsx","name":null,"original":{"line":45,"column":6},"generated":{"line":63,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":45,"column":6},"generated":{"line":63,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":45,"column":20},"generated":{"line":63,"column":20}},{"source":"../src/context.tsx","name":null,"original":{"line":45,"column":21},"generated":{"line":63,"column":21}},{"source":"../src/context.tsx","name":null,"original":{"line":45,"column":20},"generated":{"line":63,"column":25}},{"source":"../src/context.tsx","name":null,"original":{"line":45,"column":6},"generated":{"line":63,"column":26}},{"source":"../src/context.tsx","name":null,"original":{"line":46,"column":5},"generated":{"line":64,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":47,"column":4},"generated":{"line":66,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":47,"column":11},"generated":{"line":66,"column":11}},{"source":"../src/context.tsx","name":null,"original":{"line":47,"column":11},"generated":{"line":66,"column":25}},{"source":"../src/context.tsx","name":null,"original":{"line":47,"column":11},"generated":{"line":66,"column":26}},{"source":"../src/context.tsx","name":null,"original":{"line":47,"column":11},"generated":{"line":66,"column":47}},{"source":"../src/context.tsx","name":null,"original":{"line":47,"column":33},"generated":{"line":66,"column":48}},{"source":"../src/context.tsx","name":null,"original":{"line":47,"column":11},"generated":{"line":66,"column":59}},{"source":"../src/context.tsx","name":null,"original":{"line":47,"column":4},"generated":{"line":66,"column":60}},{"source":"../src/context.tsx","name":null,"original":{"line":48,"column":3},"generated":{"line":67,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":42,"column":2},"generated":{"line":67,"column":3}},{"source":"../src/context.tsx","name":null,"original":{"line":48,"column":5},"generated":{"line":67,"column":5}},{"source":"../src/context.tsx","name":null,"original":{"line":48,"column":6},"generated":{"line":67,"column":6}},{"source":"../src/context.tsx","name":null,"original":{"line":48,"column":5},"generated":{"line":67,"column":17}},{"source":"../src/context.tsx","name":null,"original":{"line":48,"column":19},"generated":{"line":67,"column":19}},{"source":"../src/context.tsx","name":null,"original":{"line":48,"column":5},"generated":{"line":67,"column":27}},{"source":"../src/context.tsx","name":null,"original":{"line":48,"column":29},"generated":{"line":67,"column":29}},{"source":"../src/context.tsx","name":null,"original":{"line":48,"column":5},"generated":{"line":67,"column":40}},{"source":"../src/context.tsx","name":null,"original":{"line":48,"column":42},"generated":{"line":67,"column":42}},{"source":"../src/context.tsx","name":null,"original":{"line":48,"column":5},"generated":{"line":67,"column":56}},{"source":"../src/context.tsx","name":null,"original":{"line":42,"column":2},"generated":{"line":67,"column":57}},{"source":"../src/context.tsx","name":null,"original":{"line":50,"column":2},"generated":{"line":68,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":50,"column":9},"generated":{"line":68,"column":9}},{"source":"../src/context.tsx","name":null,"original":{"line":50,"column":20},"generated":{"line":68,"column":20}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":4},"generated":{"line":68,"column":23}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":4},"generated":{"line":68,"column":30}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":4},"generated":{"line":68,"column":31}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":4},"generated":{"line":68,"column":38}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":4},"generated":{"line":68,"column":39}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":4},"generated":{"line":68,"column":52}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":5},"generated":{"line":68,"column":53}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":17},"generated":{"line":68,"column":65}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":18},"generated":{"line":68,"column":66}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":4},"generated":{"line":68,"column":74}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":26},"generated":{"line":68,"column":76}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":27},"generated":{"line":69,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":27},"generated":{"line":69,"column":4}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":32},"generated":{"line":69,"column":9}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":34},"generated":{"line":69,"column":11}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":35},"generated":{"line":69,"column":12}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":34},"generated":{"line":69,"column":17}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":42},"generated":{"line":69,"column":19}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":34},"generated":{"line":69,"column":30}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":26},"generated":{"line":70,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":4},"generated":{"line":70,"column":3}},{"source":"../src/context.tsx","name":null,"original":{"line":52,"column":7},"generated":{"line":70,"column":5}},{"source":"../src/context.tsx","name":null,"original":{"line":51,"column":4},"generated":{"line":70,"column":13}},{"source":"../src/context.tsx","name":null,"original":{"line":50,"column":20},"generated":{"line":70,"column":14}},{"source":"../src/context.tsx","name":null,"original":{"line":54,"column":6},"generated":{"line":70,"column":17}},{"source":"../src/context.tsx","name":null,"original":{"line":50,"column":2},"generated":{"line":70,"column":21}},{"source":"../src/context.tsx","name":null,"original":{"line":55,"column":1},"generated":{"line":71,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":22,"column":13},"generated":{"line":71,"column":1}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":13},"generated":{"line":73,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":13},"generated":{"line":73,"column":7}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":13},"generated":{"line":73,"column":8}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":13},"generated":{"line":73,"column":16}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":24},"generated":{"line":73,"column":19}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":24},"generated":{"line":74,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":30},"generated":{"line":74,"column":9}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":30},"generated":{"line":74,"column":16}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":30},"generated":{"line":74,"column":17}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":30},"generated":{"line":74,"column":27}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":41},"generated":{"line":74,"column":28}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":30},"generated":{"line":74,"column":40}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":24},"generated":{"line":74,"column":41}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":24},"generated":{"line":75,"column":0}},{"source":"../src/context.tsx","name":null,"original":{"line":57,"column":13},"generated":{"line":75,"column":1}}],"sources":{"../src/context.tsx":"import React, {\n  createContext,\n  Dispatch,\n  FC,\n  SetStateAction,\n  useCallback,\n  useContext,\n  useEffect,\n  useState\n} from 'react'\nimport { getBrowserTheme, onBrowserThemeChanged } from './browserTheme'\nimport { getLocalStorageTheme, setLocalStorageTheme } from './localStorage'\nimport { ThemeName } from './theme'\n\n// FIXME we have to give createContext a valid initial value even if in this\n// case it will never be used.\nconst ThemeContext = createContext(([null, null] as unknown) as [\n  ThemeName,\n  Dispatch<SetStateAction<ThemeName>>\n])\n\nexport const ThemeProvider: FC = ({ children }) => {\n  const [initialized, setInitialized] = useState(false)\n  const [theme, setTheme] = useState<ThemeName>('light')\n\n  const updateTheme: Dispatch<SetStateAction<ThemeName>> = useCallback(\n    newTheme => {\n      if (typeof newTheme === 'function') {\n        setTheme(currentTheme => {\n          const actualNewTheme = newTheme(currentTheme)\n          setLocalStorageTheme(actualNewTheme)\n          return actualNewTheme\n        })\n      } else {\n        setLocalStorageTheme(newTheme)\n        setTheme(newTheme)\n      }\n    },\n    [setTheme]\n  )\n\n  useEffect(() => {\n    if (!initialized) {\n      setTheme(getLocalStorageTheme() || getBrowserTheme())\n      setInitialized(true)\n    }\n    return onBrowserThemeChanged(updateTheme)\n  }, [updateTheme, setTheme, initialized, setInitialized])\n\n  return initialized ? (\n    <ThemeContext.Provider value={[theme, updateTheme]}>\n      {children}\n    </ThemeContext.Provider>\n  ) : null\n}\n\nexport const useTheme = () => useContext(ThemeContext)\n"},"lineCount":null}},"error":null,"hash":"4c04910884317da7b9d7f882b37f9606","cacheData":{"env":{}}}