{"version":3,"file":"TokenProvider.mjs","sources":["../../../../src/components/AlphaTokenProvider/TokenProvider.tsx"],"sourcesContent":["'use client'\n\nimport { useMemo } from 'react'\n\nimport { tokens } from '@channel.io/bezier-tokens/alpha'\n\nimport { type ThemeName } from '~/src/types/tokens'\nimport { createContext } from '~/src/utils/react'\n\nimport {\n  type ThemeSpecificTokens,\n  type TokenContextValue,\n  type TokenProviderProps,\n} from './TokenProvider.types'\n\nconst [TokenContextProvider, useTokenContext] =\n  // FIXME: (@ed) Remove Alpha prefix after the migration is done\n  createContext<TokenContextValue | null>(null, 'AlphaTokenProvider')\n\nexport { useTokenContext as useAlphaTokenContext }\n\nconst tokenSet: Record<ThemeName, ThemeSpecificTokens> = Object.freeze({\n  light: {\n    global: tokens.global,\n    semantic: tokens.lightTheme,\n  },\n  dark: {\n    global: tokens.global,\n    semantic: tokens.darkTheme,\n  },\n})\n\n/**\n * @private\n */\nexport function TokenProvider({ themeName, children }: TokenProviderProps) {\n  return (\n    <TokenContextProvider\n      value={useMemo(\n        () => ({\n          themeName,\n          tokens: tokenSet[themeName],\n        }),\n        [themeName]\n      )}\n    >\n      {children}\n    </TokenContextProvider>\n  )\n}\n"],"names":["TokenContextProvider","useTokenContext","createContext","tokenSet","Object","freeze","light","global","tokens","semantic","lightTheme","dark","darkTheme","TokenProvider","themeName","children","_jsx","value","useMemo"],"mappings":";;;;;AAeA,MAAM,CAACA,oBAAoB,EAAEC,eAAe,CAAC;AAC3C;AACAC,aAAa,CAA2B,IAAI,EAAE,oBAAoB;AAIpE,MAAMC,QAAgD,GAAGC,MAAM,CAACC,MAAM,CAAC;AACrEC,EAAAA,KAAK,EAAE;IACLC,MAAM,EAAEC,MAAM,CAACD,MAAM;IACrBE,QAAQ,EAAED,MAAM,CAACE;GAClB;AACDC,EAAAA,IAAI,EAAE;IACJJ,MAAM,EAAEC,MAAM,CAACD,MAAM;IACrBE,QAAQ,EAAED,MAAM,CAACI;AACnB;AACF,CAAC,CAAC;;AAEF;AACA;AACA;AACO,SAASC,aAAaA,CAAC;EAAEC,SAAS;AAAEC,EAAAA;AAA6B,CAAC,EAAE;EACzE,oBACEC,GAAA,CAAChB,oBAAoB,EAAA;IACnBiB,KAAK,EAAEC,OAAO,CACZ,OAAO;MACLJ,SAAS;MACTN,MAAM,EAAEL,QAAQ,CAACW,SAAS;AAC5B,KAAC,CAAC,EACF,CAACA,SAAS,CACZ,CAAE;AAAAC,IAAAA,QAAA,EAEDA;AAAQ,GACW,CAAC;AAE3B;;;;"}