{"id":"VX3S","dependencies":[{"name":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/react/dist/esm/extend-theme.js.map","includedInParent":true,"mtime":1616745788384},{"name":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/example/package.json","includedInParent":true,"mtime":1616745785170},{"name":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/react/package.json","includedInParent":true,"mtime":1616745788384},{"name":"@chakra-ui/theme","loc":{"line":1,"column":25},"parent":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/react/dist/esm/extend-theme.js","resolved":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/theme/dist/esm/index.js"},{"name":"@chakra-ui/utils","loc":{"line":2,"column":38},"parent":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/react/dist/esm/extend-theme.js","resolved":"/home/runner/work/chakra-theme-visualizer/chakra-theme-visualizer/node_modules/@chakra-ui/utils/dist/esm/index.js"}],"generated":{"js":"\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:!0}),exports.extendTheme=i;var e=r(require(\"@chakra-ui/theme\")),t=require(\"@chakra-ui/utils\");function r(e){return e&&e.__esModule?e:{default:e}}function i(r,i){return void 0===i&&(i=e.default),(0,t.mergeWith)({},i,r,function e(r,i,n,u){if(((0,t.isFunction)(r)||(0,t.isFunction)(i))&&Object.prototype.hasOwnProperty.call(u,n))return function(){var n=(0,t.isFunction)(r)?r(...arguments):r,u=(0,t.isFunction)(i)?i(...arguments):i;return(0,t.mergeWith)({},n,u,e)}})}"},"sourceMaps":{"js":{"mappings":[{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":0}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":13}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":20}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":35}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":43}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":56}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":57}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":64}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":68}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":76}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":88}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":1,"column":0},"generated":{"line":1,"column":90}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":1,"column":0},"generated":{"line":1,"column":94}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":1,"column":0},"generated":{"line":1,"column":96}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":1,"column":0},"generated":{"line":1,"column":98}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":1,"column":0},"generated":{"line":1,"column":106}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":2,"column":0},"generated":{"line":1,"column":127}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":2,"column":0},"generated":{"line":1,"column":129}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":2,"column":0},"generated":{"line":1,"column":137}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":157}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":166}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":168}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":171}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":178}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":181}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":183}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":194}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":196}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":197}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":65,"column":1},"generated":{"line":1,"column":205}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":32,"column":7},"generated":{"line":1,"column":208}},{"source":"../../src/extend-theme.ts","name":"extendTheme","original":{"line":32,"column":16},"generated":{"line":1,"column":217}},{"source":"../../src/extend-theme.ts","name":"overrides","original":{"line":36,"column":2},"generated":{"line":1,"column":219}},{"source":"../../src/extend-theme.ts","name":"baseTheme","original":{"line":37,"column":2},"generated":{"line":1,"column":221}},{"source":"../../src/extend-theme.ts","name":"mergeWith","original":{"line":64,"column":9},"generated":{"line":1,"column":224}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":38,"column":25},"generated":{"line":1,"column":236}},{"source":"../../src/extend-theme.ts","name":"baseTheme","original":{"line":37,"column":2},"generated":{"line":1,"column":240}},{"source":"../../src/extend-theme.ts","name":"baseTheme","original":{"line":37,"column":2},"generated":{"line":1,"column":244}},{"source":"../../src/extend-theme.ts","name":"defaultTheme","original":{"line":37,"column":26},"generated":{"line":1,"column":246}},{"source":"../../src/extend-theme.ts","name":"baseTheme","original":{"line":37,"column":2},"generated":{"line":1,"column":248}},{"source":"../../src/extend-theme.ts","name":"mergeWith","original":{"line":64,"column":9},"generated":{"line":1,"column":258}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":64,"column":19},"generated":{"line":1,"column":260}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":64,"column":19},"generated":{"line":1,"column":262}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":64,"column":19},"generated":{"line":1,"column":273}},{"source":"../../src/extend-theme.ts","name":"baseTheme","original":{"line":64,"column":23},"generated":{"line":1,"column":276}},{"source":"../../src/extend-theme.ts","name":"overrides","original":{"line":64,"column":34},"generated":{"line":1,"column":278}},{"source":"../../src/extend-theme.ts","name":"customizer","original":{"line":39,"column":11},"generated":{"line":1,"column":280}},{"source":"../../src/extend-theme.ts","name":"customizer","original":{"line":39,"column":11},"generated":{"line":1,"column":289}},{"source":"../../src/extend-theme.ts","name":"source","original":{"line":40,"column":4},"generated":{"line":1,"column":291}},{"source":"../../src/extend-theme.ts","name":"override","original":{"line":41,"column":4},"generated":{"line":1,"column":293}},{"source":"../../src/extend-theme.ts","name":"key","original":{"line":42,"column":4},"generated":{"line":1,"column":295}},{"source":"../../src/extend-theme.ts","name":"object","original":{"line":43,"column":4},"generated":{"line":1,"column":297}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":46,"column":6},"generated":{"line":1,"column":300}},{"source":"../../src/extend-theme.ts","name":"isFunction","original":{"line":46,"column":7},"generated":{"line":1,"column":305}},{"source":"../../src/extend-theme.ts","name":"source","original":{"line":46,"column":18},"generated":{"line":1,"column":307}},{"source":"../../src/extend-theme.ts","name":"source","original":{"line":46,"column":18},"generated":{"line":1,"column":309}},{"source":"../../src/extend-theme.ts","name":"source","original":{"line":46,"column":18},"generated":{"line":1,"column":321}},{"source":"../../src/extend-theme.ts","name":"isFunction","original":{"line":46,"column":29},"generated":{"line":1,"column":326}},{"source":"../../src/extend-theme.ts","name":"override","original":{"line":46,"column":40},"generated":{"line":1,"column":328}},{"source":"../../src/extend-theme.ts","name":"override","original":{"line":46,"column":40},"generated":{"line":1,"column":330}},{"source":"../../src/extend-theme.ts","name":"override","original":{"line":46,"column":40},"generated":{"line":1,"column":342}},{"source":"../../src/extend-theme.ts","name":"Object","original":{"line":47,"column":6},"generated":{"line":1,"column":347}},{"source":"../../src/extend-theme.ts","name":"prototype","original":{"line":47,"column":13},"generated":{"line":1,"column":354}},{"source":"../../src/extend-theme.ts","name":"hasOwnProperty","original":{"line":47,"column":23},"generated":{"line":1,"column":364}},{"source":"../../src/extend-theme.ts","name":"call","original":{"line":47,"column":38},"generated":{"line":1,"column":379}},{"source":"../../src/extend-theme.ts","name":"object","original":{"line":47,"column":43},"generated":{"line":1,"column":384}},{"source":"../../src/extend-theme.ts","name":"key","original":{"line":47,"column":51},"generated":{"line":1,"column":386}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":49,"column":13},"generated":{"line":1,"column":389}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":49,"column":13},"generated":{"line":1,"column":396}},{"source":"../../src/extend-theme.ts","name":"sourceValue","original":{"line":50,"column":14},"generated":{"line":1,"column":407}},{"source":"../../src/extend-theme.ts","name":"sourceValue","original":{"line":50,"column":14},"generated":{"line":1,"column":411}},{"source":"../../src/extend-theme.ts","name":"isFunction","original":{"line":50,"column":28},"generated":{"line":1,"column":414}},{"source":"../../src/extend-theme.ts","name":"source","original":{"line":50,"column":39},"generated":{"line":1,"column":416}},{"source":"../../src/extend-theme.ts","name":"source","original":{"line":50,"column":39},"generated":{"line":1,"column":418}},{"source":"../../src/extend-theme.ts","name":"source","original":{"line":50,"column":39},"generated":{"line":1,"column":430}},{"source":"../../src/extend-theme.ts","name":"source","original":{"line":50,"column":49},"generated":{"line":1,"column":433}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":50,"column":56},"generated":{"line":1,"column":438}},{"source":"../../src/extend-theme.ts","name":"source","original":{"line":50,"column":67},"generated":{"line":1,"column":449}},{"source":"../../src/extend-theme.ts","name":"overrideValue","original":{"line":52,"column":14},"generated":{"line":1,"column":451}},{"source":"../../src/extend-theme.ts","name":"isFunction","original":{"line":52,"column":30},"generated":{"line":1,"column":454}},{"source":"../../src/extend-theme.ts","name":"override","original":{"line":52,"column":41},"generated":{"line":1,"column":456}},{"source":"../../src/extend-theme.ts","name":"override","original":{"line":52,"column":41},"generated":{"line":1,"column":458}},{"source":"../../src/extend-theme.ts","name":"override","original":{"line":52,"column":41},"generated":{"line":1,"column":470}},{"source":"../../src/extend-theme.ts","name":"override","original":{"line":53,"column":12},"generated":{"line":1,"column":473}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":53,"column":21},"generated":{"line":1,"column":478}},{"source":"../../src/extend-theme.ts","name":"override","original":{"line":54,"column":12},"generated":{"line":1,"column":489}},{"source":"../../src/extend-theme.ts","name":"mergeWith","original":{"line":56,"column":15},"generated":{"line":1,"column":491}},{"source":"../../src/extend-theme.ts","name":"mergeWith","original":{"line":56,"column":15},"generated":{"line":1,"column":498}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":56,"column":25},"generated":{"line":1,"column":500}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":56,"column":25},"generated":{"line":1,"column":502}},{"source":"../../src/extend-theme.ts","name":null,"original":{"line":56,"column":25},"generated":{"line":1,"column":513}},{"source":"../../src/extend-theme.ts","name":"sourceValue","original":{"line":56,"column":29},"generated":{"line":1,"column":516}},{"source":"../../src/extend-theme.ts","name":"overrideValue","original":{"line":56,"column":42},"generated":{"line":1,"column":518}},{"source":"../../src/extend-theme.ts","name":"customizer","original":{"line":56,"column":57},"generated":{"line":1,"column":520}}],"sources":{"../../src/extend-theme.ts":"import defaultTheme, { ChakraTheme, Theme } from \"@chakra-ui/theme\"\nimport { isFunction, mergeWith } from \"@chakra-ui/utils\"\n\ntype CloneKey<Target, Key> = Key extends keyof Target ? Target[Key] : unknown\n\n/**\n * Represents a loose but specific type for the theme override.\n * It provides autocomplete hints for extending the theme, but leaves room\n * for adding properties.\n */\ntype DeepThemeExtension<BaseTheme, ThemeType> = {\n  [Key in keyof BaseTheme]?: BaseTheme[Key] extends (...args: any[]) => any\n    ? DeepThemeExtension<\n        Partial<ReturnType<BaseTheme[Key]>>,\n        CloneKey<ThemeType, Key>\n      >\n    : BaseTheme[Key] extends Array<any>\n    ? CloneKey<ThemeType, Key>\n    : BaseTheme[Key] extends object\n    ? DeepThemeExtension<Partial<BaseTheme[Key]>, CloneKey<ThemeType, Key>>\n    : CloneKey<ThemeType, Key>\n}\n\nexport type ThemeOverride = Partial<ChakraTheme> &\n  DeepThemeExtension<Theme, ChakraTheme>\n\n/**\n * Function to override or customize the Chakra UI theme conveniently\n * @param overrides - Your custom theme object overrides\n * @param baseTheme - theme to customize\n */\nexport function extendTheme<\n  BaseTheme extends ChakraTheme = Theme,\n  Overrides extends ThemeOverride = ThemeOverride\n>(\n  overrides: Overrides,\n  baseTheme: BaseTheme = (defaultTheme as unknown) as BaseTheme,\n): BaseTheme & Overrides {\n  function customizer(\n    source: unknown,\n    override: unknown,\n    key: string,\n    object: any,\n  ) {\n    if (\n      (isFunction(source) || isFunction(override)) &&\n      Object.prototype.hasOwnProperty.call(object, key)\n    ) {\n      return (...args: unknown[]) => {\n        const sourceValue = isFunction(source) ? source(...args) : source\n\n        const overrideValue = isFunction(override)\n          ? override(...args)\n          : override\n\n        return mergeWith({}, sourceValue, overrideValue, customizer)\n      }\n    }\n\n    // fallback to default behaviour\n    return undefined\n  }\n\n  return mergeWith({}, baseTheme, overrides, customizer)\n}\n"},"lineCount":null}},"error":null,"hash":"4d9dca128c87140fdf28452a020e2f67","cacheData":{"env":{}}}