{
  "version": 3,
  "sources": ["../../../../../node_modules/memoizerific/memoizerific.js", "../../../../../node_modules/global/window.js", "../../../../../addons/backgrounds/manager.js", "../../../../../addons/backgrounds/dist/esm/manager.js", "global-externals:react", "global-externals:@storybook/addons", "../../../../../addons/backgrounds/dist/esm/constants.js", "../../../../../addons/backgrounds/dist/esm/containers/BackgroundSelector.js", "global-externals:@storybook/api", "global-externals:@storybook/client-logger", "global-externals:@storybook/components", "../../../../../addons/backgrounds/dist/esm/components/ColorIcon.js", "global-externals:@storybook/theming", "../../../../../addons/backgrounds/dist/esm/helpers/index.js", "../../../../../node_modules/ts-dedent/src/index.ts", "../../../../../addons/backgrounds/dist/esm/containers/GridSelector.js"],
  "sourcesContent": ["(function(f){if(typeof exports===\"object\"&&typeof module!==\"undefined\"){module.exports=f()}else if(typeof define===\"function\"&&define.amd){define([],f)}else{var g;if(typeof window!==\"undefined\"){g=window}else if(typeof global!==\"undefined\"){g=global}else if(typeof self!==\"undefined\"){g=self}else{g=this}g.memoizerific = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(_dereq_,module,exports){\nmodule.exports = function(forceSimilar) {\n\tif (typeof Map !== 'function' || forceSimilar) {\n\t\tvar Similar = _dereq_('./similar');\n\t\treturn new Similar();\n\t}\n\telse {\n\t\treturn new Map();\n\t}\n}\n\n},{\"./similar\":2}],2:[function(_dereq_,module,exports){\nfunction Similar() {\n\tthis.list = [];\n\tthis.lastItem = undefined;\n\tthis.size = 0;\n\n\treturn this;\n}\n\nSimilar.prototype.get = function(key) {\n\tvar index;\n\n\tif (this.lastItem && this.isEqual(this.lastItem.key, key)) {\n\t\treturn this.lastItem.val;\n\t}\n\n\tindex = this.indexOf(key);\n\tif (index >= 0) {\n\t\tthis.lastItem = this.list[index];\n\t\treturn this.list[index].val;\n\t}\n\n\treturn undefined;\n};\n\nSimilar.prototype.set = function(key, val) {\n\tvar index;\n\n\tif (this.lastItem && this.isEqual(this.lastItem.key, key)) {\n\t\tthis.lastItem.val = val;\n\t\treturn this;\n\t}\n\n\tindex = this.indexOf(key);\n\tif (index >= 0) {\n\t\tthis.lastItem = this.list[index];\n\t\tthis.list[index].val = val;\n\t\treturn this;\n\t}\n\n\tthis.lastItem = { key: key, val: val };\n\tthis.list.push(this.lastItem);\n\tthis.size++;\n\n\treturn this;\n};\n\nSimilar.prototype.delete = function(key) {\n\tvar index;\n\n\tif (this.lastItem && this.isEqual(this.lastItem.key, key)) {\n\t\tthis.lastItem = undefined;\n\t}\n\n\tindex = this.indexOf(key);\n\tif (index >= 0) {\n\t\tthis.size--;\n\t\treturn this.list.splice(index, 1)[0];\n\t}\n\n\treturn undefined;\n};\n\n\n// important that has() doesn't use get() in case an existing key has a falsy value, in which case has() would return false\nSimilar.prototype.has = function(key) {\n\tvar index;\n\n\tif (this.lastItem && this.isEqual(this.lastItem.key, key)) {\n\t\treturn true;\n\t}\n\n\tindex = this.indexOf(key);\n\tif (index >= 0) {\n\t\tthis.lastItem = this.list[index];\n\t\treturn true;\n\t}\n\n\treturn false;\n};\n\nSimilar.prototype.forEach = function(callback, thisArg) {\n\tvar i;\n\tfor (i = 0; i < this.size; i++) {\n\t\tcallback.call(thisArg || this, this.list[i].val, this.list[i].key, this);\n\t}\n};\n\nSimilar.prototype.indexOf = function(key) {\n\tvar i;\n\tfor (i = 0; i < this.size; i++) {\n\t\tif (this.isEqual(this.list[i].key, key)) {\n\t\t\treturn i;\n\t\t}\n\t}\n\treturn -1;\n};\n\n// check if the numbers are equal, or whether they are both precisely NaN (isNaN returns true for all non-numbers)\nSimilar.prototype.isEqual = function(val1, val2) {\n\treturn val1 === val2 || (val1 !== val1 && val2 !== val2);\n};\n\nmodule.exports = Similar;\n},{}],3:[function(_dereq_,module,exports){\nvar MapOrSimilar = _dereq_('map-or-similar');\n\nmodule.exports = function (limit) {\n\tvar cache = new MapOrSimilar(undefined === 'true'),\n\t\tlru = [];\n\n\treturn function (fn) {\n\t\tvar memoizerific = function () {\n\t\t\tvar currentCache = cache,\n\t\t\t\tnewMap,\n\t\t\t\tfnResult,\n\t\t\t\targsLengthMinusOne = arguments.length - 1,\n\t\t\t\tlruPath = Array(argsLengthMinusOne + 1),\n\t\t\t\tisMemoized = true,\n\t\t\t\ti;\n\n\t\t\tif ((memoizerific.numArgs || memoizerific.numArgs === 0) && memoizerific.numArgs !== argsLengthMinusOne + 1) {\n\t\t\t\tthrow new Error('Memoizerific functions should always be called with the same number of arguments');\n\t\t\t}\n\n\t\t\t// loop through each argument to traverse the map tree\n\t\t\tfor (i = 0; i < argsLengthMinusOne; i++) {\n\t\t\t\tlruPath[i] = {\n\t\t\t\t\tcacheItem: currentCache,\n\t\t\t\t\targ: arguments[i]\n\t\t\t\t};\n\n\t\t\t\t// climb through the hierarchical map tree until the second-last argument has been found, or an argument is missing.\n\t\t\t\t// if all arguments up to the second-last have been found, this will potentially be a cache hit (determined later)\n\t\t\t\tif (currentCache.has(arguments[i])) {\n\t\t\t\t\tcurrentCache = currentCache.get(arguments[i]);\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tisMemoized = false;\n\n\t\t\t\t// make maps until last value\n\t\t\t\tnewMap = new MapOrSimilar(undefined === 'true');\n\t\t\t\tcurrentCache.set(arguments[i], newMap);\n\t\t\t\tcurrentCache = newMap;\n\t\t\t}\n\n\t\t\t// we are at the last arg, check if it is really memoized\n\t\t\tif (isMemoized) {\n\t\t\t\tif (currentCache.has(arguments[argsLengthMinusOne])) {\n\t\t\t\t\tfnResult = currentCache.get(arguments[argsLengthMinusOne]);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tisMemoized = false;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (!isMemoized) {\n\t\t\t\tfnResult = fn.apply(null, arguments);\n\t\t\t\tcurrentCache.set(arguments[argsLengthMinusOne], fnResult);\n\t\t\t}\n\n\t\t\tif (limit > 0) {\n\t\t\t\tlruPath[argsLengthMinusOne] = {\n\t\t\t\t\tcacheItem: currentCache,\n\t\t\t\t\targ: arguments[argsLengthMinusOne]\n\t\t\t\t};\n\n\t\t\t\tif (isMemoized) {\n\t\t\t\t\tmoveToMostRecentLru(lru, lruPath);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tlru.push(lruPath);\n\t\t\t\t}\n\n\t\t\t\tif (lru.length > limit) {\n\t\t\t\t\tremoveCachedResult(lru.shift());\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tmemoizerific.wasMemoized = isMemoized;\n\t\t\tmemoizerific.numArgs = argsLengthMinusOne + 1;\n\n\t\t\treturn fnResult;\n\t\t};\n\n\t\tmemoizerific.limit = limit;\n\t\tmemoizerific.wasMemoized = false;\n\t\tmemoizerific.cache = cache;\n\t\tmemoizerific.lru = lru;\n\n\t\treturn memoizerific;\n\t};\n};\n\n// move current args to most recent position\nfunction moveToMostRecentLru(lru, lruPath) {\n\tvar lruLen = lru.length,\n\t\tlruPathLen = lruPath.length,\n\t\tisMatch,\n\t\ti, ii;\n\n\tfor (i = 0; i < lruLen; i++) {\n\t\tisMatch = true;\n\t\tfor (ii = 0; ii < lruPathLen; ii++) {\n\t\t\tif (!isEqual(lru[i][ii].arg, lruPath[ii].arg)) {\n\t\t\t\tisMatch = false;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif (isMatch) {\n\t\t\tbreak;\n\t\t}\n\t}\n\n\tlru.push(lru.splice(i, 1)[0]);\n}\n\n// remove least recently used cache item and all dead branches\nfunction removeCachedResult(removedLru) {\n\tvar removedLruLen = removedLru.length,\n\t\tcurrentLru = removedLru[removedLruLen - 1],\n\t\ttmp,\n\t\ti;\n\n\tcurrentLru.cacheItem.delete(currentLru.arg);\n\n\t// walk down the tree removing dead branches (size 0) along the way\n\tfor (i = removedLruLen - 2; i >= 0; i--) {\n\t\tcurrentLru = removedLru[i];\n\t\ttmp = currentLru.cacheItem.get(currentLru.arg);\n\n\t\tif (!tmp || !tmp.size) {\n\t\t\tcurrentLru.cacheItem.delete(currentLru.arg);\n\t\t} else {\n\t\t\tbreak;\n\t\t}\n\t}\n}\n\n// check if the numbers are equal, or whether they are both precisely NaN (isNaN returns true for all non-numbers)\nfunction isEqual(val1, val2) {\n\treturn val1 === val2 || (val1 !== val1 && val2 !== val2);\n}\n},{\"map-or-similar\":1}]},{},[3])(3)\n});", "var win;\n\nif (typeof window !== \"undefined\") {\n    win = window;\n} else if (typeof global !== \"undefined\") {\n    win = global;\n} else if (typeof self !== \"undefined\"){\n    win = self;\n} else {\n    win = {};\n}\n\nmodule.exports = win;\n", "import './dist/esm/manager';\n", "import React, { Fragment } from 'react';\nimport { addons, types } from '@storybook/addons';\nimport { ADDON_ID } from './constants';\nimport { BackgroundSelector } from './containers/BackgroundSelector';\nimport { GridSelector } from './containers/GridSelector';\naddons.register(ADDON_ID, () => {\n  addons.add(ADDON_ID, {\n    title: 'Backgrounds',\n    type: types.TOOL,\n    match: ({\n      viewMode\n    }) => !!(viewMode && viewMode.match(/^(story|docs)$/)),\n    render: () => /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(BackgroundSelector, null), /*#__PURE__*/React.createElement(GridSelector, null))\n  });\n});", "export default __REACT__;\nconst { Children, Component, Fragment, Profiler, PureComponent, StrictMode, Suspense, cloneElement, createContext, createElement, createFactory, createRef, forwardRef, isValidElement, lazy, memo, useCallback, useContext, useDebugValue, useEffect, useImperativeHandle, useLayoutEffect, useMemo, useReducer, useRef, useState, version } = __REACT__;\nexport { Children, Component, Fragment, Profiler, PureComponent, StrictMode, Suspense, cloneElement, createContext, createElement, createFactory, createRef, forwardRef, isValidElement, lazy, memo, useCallback, useContext, useDebugValue, useEffect, useImperativeHandle, useLayoutEffect, useMemo, useReducer, useRef, useState, version };", "export default __STORYBOOKADDONS__;\nconst { AddonStore, Channel, HooksContext, addons, applyHooks, isSupportedType, makeDecorator, mockChannel, types, useArgs, useCallback, useChannel, useEffect, useGlobals, useMemo, useParameter, useReducer, useRef, useState, useStoryContext } = __STORYBOOKADDONS__;\nexport { AddonStore, Channel, HooksContext, addons, applyHooks, isSupportedType, makeDecorator, mockChannel, types, useArgs, useCallback, useChannel, useEffect, useGlobals, useMemo, useParameter, useReducer, useRef, useState, useStoryContext };", "export const ADDON_ID = 'storybook/background';\nexport const PARAM_KEY = 'backgrounds';\nexport const GRID_PARAM_KEY = 'grid';\nexport const EVENTS = {\n  UPDATE: `${ADDON_ID}/update`\n};", "import React, { Fragment, useCallback, useMemo, memo } from 'react';\nimport memoize from 'memoizerific';\nimport { useParameter, useGlobals } from '@storybook/api';\nimport { logger } from '@storybook/client-logger';\nimport { Icons, IconButton, WithTooltip, TooltipLinkList } from '@storybook/components';\nimport { PARAM_KEY as BACKGROUNDS_PARAM_KEY } from '../constants';\nimport { ColorIcon } from '../components/ColorIcon';\nimport { getBackgroundColorByName } from '../helpers';\nconst createBackgroundSelectorItem = memoize(1000)((id, name, value, hasSwatch, change, active) => ({\n  id: id || name,\n  title: name,\n  onClick: () => {\n    change({\n      selected: value,\n      name\n    });\n  },\n  value,\n  right: hasSwatch ? /*#__PURE__*/React.createElement(ColorIcon, {\n    background: value\n  }) : undefined,\n  active\n}));\nconst getDisplayedItems = memoize(10)((backgrounds, selectedBackgroundColor, change) => {\n  const backgroundSelectorItems = backgrounds.map(({\n    name,\n    value\n  }) => createBackgroundSelectorItem(null, name, value, true, change, value === selectedBackgroundColor));\n\n  if (selectedBackgroundColor !== 'transparent') {\n    return [createBackgroundSelectorItem('reset', 'Clear background', 'transparent', null, change, false), ...backgroundSelectorItems];\n  }\n\n  return backgroundSelectorItems;\n});\nconst DEFAULT_BACKGROUNDS_CONFIG = {\n  default: null,\n  disable: true,\n  values: []\n};\nexport const BackgroundSelector = /*#__PURE__*/memo(() => {\n  const backgroundsConfig = useParameter(BACKGROUNDS_PARAM_KEY, DEFAULT_BACKGROUNDS_CONFIG);\n  const [globals, updateGlobals] = useGlobals();\n  const globalsBackgroundColor = globals[BACKGROUNDS_PARAM_KEY]?.value;\n  const selectedBackgroundColor = useMemo(() => {\n    return getBackgroundColorByName(globalsBackgroundColor, backgroundsConfig.values, backgroundsConfig.default);\n  }, [backgroundsConfig, globalsBackgroundColor]);\n\n  if (Array.isArray(backgroundsConfig)) {\n    logger.warn('Addon Backgrounds api has changed in Storybook 6.0. Please refer to the migration guide: https://github.com/storybookjs/storybook/blob/next/MIGRATION.md');\n  }\n\n  const onBackgroundChange = useCallback(value => {\n    updateGlobals({\n      [BACKGROUNDS_PARAM_KEY]: Object.assign({}, globals[BACKGROUNDS_PARAM_KEY], {\n        value\n      })\n    });\n  }, [backgroundsConfig, globals, updateGlobals]);\n\n  if (backgroundsConfig.disable) {\n    return null;\n  }\n\n  return /*#__PURE__*/React.createElement(Fragment, null, /*#__PURE__*/React.createElement(WithTooltip, {\n    placement: \"top\",\n    trigger: \"click\",\n    closeOnClick: true,\n    tooltip: ({\n      onHide\n    }) => {\n      return /*#__PURE__*/React.createElement(TooltipLinkList, {\n        links: getDisplayedItems(backgroundsConfig.values, selectedBackgroundColor, ({\n          selected\n        }) => {\n          if (selectedBackgroundColor !== selected) {\n            onBackgroundChange(selected);\n          }\n\n          onHide();\n        })\n      });\n    }\n  }, /*#__PURE__*/React.createElement(IconButton, {\n    key: \"background\",\n    title: \"Change the background of the preview\",\n    active: selectedBackgroundColor !== 'transparent'\n  }, /*#__PURE__*/React.createElement(Icons, {\n    icon: \"photo\"\n  }))));\n});", "export default __STORYBOOKAPI__;\nconst { ActiveTabs, Consumer, Provider, combineParameters, merge, useAddonState, useArgTypes, useArgs, useChannel, useGlobalTypes, useGlobals, useParameter, useSharedState, useStoryPrepared, useStorybookApi, useStorybookState } = __STORYBOOKAPI__;\nexport { ActiveTabs, Consumer, Provider, combineParameters, merge, useAddonState, useArgTypes, useArgs, useChannel, useGlobalTypes, useGlobals, useParameter, useSharedState, useStoryPrepared, useStorybookApi, useStorybookState };", "export default __STORYBOOKCLIENTLOGGER__;\nconst { logger, once, pretty } = __STORYBOOKCLIENTLOGGER__;\nexport { logger, once, pretty };", "export default __STORYBOOKCOMPONENTS__;\nconst { A, ActionBar, AddonPanel, Badge, Bar, Blockquote, Button, Code, DL, Div, DocumentWrapper, FlexBar, Form, H1, H2, H3, H4, H5, H6, HR, IconButton, IconButtonSkeleton, Icons, Img, LI, Link, Loader, OL, P, Placeholder, Pre, ResetWrapper, ScrollArea, Separator, Spaced, Span, StorybookIcon, StorybookLogo, Symbols, SyntaxHighlighter, TT, TabBar, TabButton, TabWrapper, Table, Tabs, TabsState, TooltipLinkList, TooltipMessage, TooltipNote, UL, WithTooltip, WithTooltipPure, Zoom, codeCommon, components, createCopyToClipboardFunction, getStoryHref, interleaveSeparators, nameSpaceClassNames, resetComponents, withReset } = __STORYBOOKCOMPONENTS__;\nexport { A, ActionBar, AddonPanel, Badge, Bar, Blockquote, Button, Code, DL, Div, DocumentWrapper, FlexBar, Form, H1, H2, H3, H4, H5, H6, HR, IconButton, IconButtonSkeleton, Icons, Img, LI, Link, Loader, OL, P, Placeholder, Pre, ResetWrapper, ScrollArea, Separator, Spaced, Span, StorybookIcon, StorybookLogo, Symbols, SyntaxHighlighter, TT, TabBar, TabButton, TabWrapper, Table, Tabs, TabsState, TooltipLinkList, TooltipMessage, TooltipNote, UL, WithTooltip, WithTooltipPure, Zoom, codeCommon, components, createCopyToClipboardFunction, getStoryHref, interleaveSeparators, nameSpaceClassNames, resetComponents, withReset };", "import { styled } from '@storybook/theming';\nexport const ColorIcon = styled.span(({\n  background\n}) => ({\n  borderRadius: '1rem',\n  display: 'block',\n  height: '1rem',\n  width: '1rem',\n  background\n}), ({\n  theme\n}) => ({\n  boxShadow: `${theme.appBorderColor} 0 0 0 1px inset`\n}));", "export default __STORYBOOKTHEMING__;\nconst { CacheProvider, ClassNames, Global, ThemeProvider, background, color, convert, create, createCache, createGlobal, createReset, css, darken, ensure, ignoreSsrWarning, isPropValid, jsx, keyframes, lighten, styled, themes, typography, useTheme, withTheme } = __STORYBOOKTHEMING__;\nexport { CacheProvider, ClassNames, Global, ThemeProvider, background, color, convert, create, createCache, createGlobal, createReset, css, darken, ensure, ignoreSsrWarning, isPropValid, jsx, keyframes, lighten, styled, themes, typography, useTheme, withTheme };", "import global from 'global';\nimport { dedent } from 'ts-dedent';\nimport { logger } from '@storybook/client-logger';\nconst {\n  document,\n  window\n} = global;\nexport const isReduceMotionEnabled = () => {\n  const prefersReduceMotion = window.matchMedia('(prefers-reduced-motion: reduce)');\n  return prefersReduceMotion.matches;\n};\nexport const getBackgroundColorByName = (currentSelectedValue, backgrounds = [], defaultName) => {\n  if (currentSelectedValue === 'transparent') {\n    return 'transparent';\n  }\n\n  if (backgrounds.find(background => background.value === currentSelectedValue)) {\n    return currentSelectedValue;\n  }\n\n  const defaultBackground = backgrounds.find(background => background.name === defaultName);\n\n  if (defaultBackground) {\n    return defaultBackground.value;\n  }\n\n  if (defaultName) {\n    const availableColors = backgrounds.map(background => background.name).join(', ');\n    logger.warn(dedent`\n        Backgrounds Addon: could not find the default color \"${defaultName}\".\n        These are the available colors for your story based on your configuration:\n        ${availableColors}.\n      `);\n  }\n\n  return 'transparent';\n};\nexport const clearStyles = selector => {\n  const selectors = Array.isArray(selector) ? selector : [selector];\n  selectors.forEach(clearStyle);\n};\n\nconst clearStyle = selector => {\n  const element = document.getElementById(selector);\n\n  if (element) {\n    element.parentElement.removeChild(element);\n  }\n};\n\nexport const addGridStyle = (selector, css) => {\n  const existingStyle = document.getElementById(selector);\n\n  if (existingStyle) {\n    if (existingStyle.innerHTML !== css) {\n      existingStyle.innerHTML = css;\n    }\n  } else {\n    const style = document.createElement('style');\n    style.setAttribute('id', selector);\n    style.innerHTML = css;\n    document.head.appendChild(style);\n  }\n};\nexport const addBackgroundStyle = (selector, css, storyId) => {\n  const existingStyle = document.getElementById(selector);\n\n  if (existingStyle) {\n    if (existingStyle.innerHTML !== css) {\n      existingStyle.innerHTML = css;\n    }\n  } else {\n    const style = document.createElement('style');\n    style.setAttribute('id', selector);\n    style.innerHTML = css;\n    const gridStyleSelector = `addon-backgrounds-grid${storyId ? `-docs-${storyId}` : ''}`; // If grids already exist, we want to add the style tag BEFORE it so the background doesn't override grid\n\n    const existingGridStyle = document.getElementById(gridStyleSelector);\n\n    if (existingGridStyle) {\n      existingGridStyle.parentElement.insertBefore(style, existingGridStyle);\n    } else {\n      document.head.appendChild(style);\n    }\n  }\n};", null, "import React, { memo } from 'react';\nimport { useGlobals, useParameter } from '@storybook/api';\nimport { Icons, IconButton } from '@storybook/components';\nimport { PARAM_KEY as BACKGROUNDS_PARAM_KEY } from '../constants';\nexport const GridSelector = /*#__PURE__*/memo(() => {\n  const [globals, updateGlobals] = useGlobals();\n  const {\n    grid\n  } = useParameter(BACKGROUNDS_PARAM_KEY, {\n    grid: {\n      disable: false\n    }\n  });\n\n  if (grid?.disable) {\n    return null;\n  }\n\n  const isActive = globals[BACKGROUNDS_PARAM_KEY]?.grid || false;\n  return /*#__PURE__*/React.createElement(IconButton, {\n    key: \"background\",\n    active: isActive,\n    title: \"Apply a grid to the preview\",\n    onClick: () => updateGlobals({\n      [BACKGROUNDS_PARAM_KEY]: Object.assign({}, globals[BACKGROUNDS_PARAM_KEY], {\n        grid: !isActive\n      })\n    })\n  }, /*#__PURE__*/React.createElement(Icons, {\n    icon: \"grid\"\n  }));\n});"],
  "mappings": "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",
  "names": []
}
