{"ast":null,"code":"\"use client\";\n\nimport React, { useContext } from 'react';\nimport { token2CSSVar, useCSSVarRegister, useStyleRegister } from '@ant-design/cssinjs';\nimport { warning } from 'rc-util';\nimport { ConfigContext } from '../../config-provider/context';\nimport { genCommonStyle, genLinkStyle } from '../../style';\nimport useToken, { ignore, unitless } from '../useToken';\nimport genCalc from './calc';\nimport genMaxMin from './maxmin';\nimport statisticToken, { merge as mergeToken } from './statistic';\nimport useResetIconStyle from './useResetIconStyle';\nconst getDefaultComponentToken = (component, token, getDefaultToken) => {\n  var _a;\n  if (typeof getDefaultToken === 'function') {\n    return getDefaultToken(mergeToken(token, (_a = token[component]) !== null && _a !== void 0 ? _a : {}));\n  }\n  return getDefaultToken !== null && getDefaultToken !== void 0 ? getDefaultToken : {};\n};\nconst getComponentToken = (component, token, defaultToken, options) => {\n  const customToken = Object.assign({}, token[component]);\n  if (options === null || options === void 0 ? void 0 : options.deprecatedTokens) {\n    const {\n      deprecatedTokens\n    } = options;\n    deprecatedTokens.forEach(_ref => {\n      let [oldTokenKey, newTokenKey] = _ref;\n      var _a;\n      if (process.env.NODE_ENV !== 'production') {\n        process.env.NODE_ENV !== \"production\" ? warning(!(customToken === null || customToken === void 0 ? void 0 : customToken[oldTokenKey]), `Component Token \\`${String(oldTokenKey)}\\` of ${component} is deprecated. Please use \\`${String(newTokenKey)}\\` instead.`) : void 0;\n      }\n      // Should wrap with `if` clause, or there will be `undefined` in object.\n      if ((customToken === null || customToken === void 0 ? void 0 : customToken[oldTokenKey]) || (customToken === null || customToken === void 0 ? void 0 : customToken[newTokenKey])) {\n        (_a = customToken[newTokenKey]) !== null && _a !== void 0 ? _a : customToken[newTokenKey] = customToken === null || customToken === void 0 ? void 0 : customToken[oldTokenKey];\n      }\n    });\n  }\n  const mergedToken = Object.assign(Object.assign({}, defaultToken), customToken);\n  // Remove same value as global token to minimize size\n  Object.keys(mergedToken).forEach(key => {\n    if (mergedToken[key] === token[key]) {\n      delete mergedToken[key];\n    }\n  });\n  return mergedToken;\n};\nconst getCompVarPrefix = (component, prefix) => `${[prefix, component.replace(/([A-Z]+)([A-Z][a-z]+)/g, '$1-$2').replace(/([a-z])([A-Z])/g, '$1-$2')].filter(Boolean).join('-')}`;\nexport default function genComponentStyleHook(componentName, styleFn, getDefaultToken) {\n  let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n  const cells = Array.isArray(componentName) ? componentName : [componentName, componentName];\n  const [component] = cells;\n  const concatComponent = cells.join('-');\n  return function (prefixCls) {\n    let rootCls = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : prefixCls;\n    const [theme, realToken, hashId, token, cssVar] = useToken();\n    const {\n      getPrefixCls,\n      iconPrefixCls,\n      csp\n    } = useContext(ConfigContext);\n    const rootPrefixCls = getPrefixCls();\n    const type = cssVar ? 'css' : 'js';\n    const calc = genCalc(type);\n    const {\n      max,\n      min\n    } = genMaxMin(type);\n    // Shared config\n    const sharedConfig = {\n      theme,\n      token,\n      hashId,\n      nonce: () => csp === null || csp === void 0 ? void 0 : csp.nonce,\n      clientOnly: options.clientOnly,\n      // antd is always at top of styles\n      order: options.order || -999\n    };\n    // Generate style for all a tags in antd component.\n    useStyleRegister(Object.assign(Object.assign({}, sharedConfig), {\n      clientOnly: false,\n      path: ['Shared', rootPrefixCls]\n    }), () => [{\n      // Link\n      '&': genLinkStyle(token)\n    }]);\n    // Generate style for icons\n    useResetIconStyle(iconPrefixCls, csp);\n    const wrapSSR = useStyleRegister(Object.assign(Object.assign({}, sharedConfig), {\n      path: [concatComponent, prefixCls, iconPrefixCls]\n    }), () => {\n      if (options.injectStyle === false) {\n        return [];\n      }\n      const {\n        token: proxyToken,\n        flush\n      } = statisticToken(token);\n      const defaultComponentToken = getDefaultComponentToken(component, realToken, getDefaultToken);\n      const componentCls = `.${prefixCls}`;\n      const componentToken = getComponentToken(component, realToken, defaultComponentToken, {\n        deprecatedTokens: options.deprecatedTokens\n      });\n      if (cssVar) {\n        Object.keys(defaultComponentToken).forEach(key => {\n          defaultComponentToken[key] = `var(${token2CSSVar(key, getCompVarPrefix(component, cssVar.prefix))})`;\n        });\n      }\n      const mergedToken = mergeToken(proxyToken, {\n        componentCls,\n        prefixCls,\n        iconCls: `.${iconPrefixCls}`,\n        antCls: `.${rootPrefixCls}`,\n        calc,\n        // @ts-ignore\n        max,\n        // @ts-ignore\n        min\n      }, cssVar ? defaultComponentToken : componentToken);\n      const styleInterpolation = styleFn(mergedToken, {\n        hashId,\n        prefixCls,\n        rootPrefixCls,\n        iconPrefixCls\n      });\n      flush(component, componentToken);\n      return [options.resetStyle === false ? null : genCommonStyle(mergedToken, prefixCls, rootCls), styleInterpolation];\n    });\n    return [wrapSSR, hashId];\n  };\n}\nexport const genSubStyleComponent = (componentName, styleFn, getDefaultToken, options) => {\n  const useStyle = genComponentStyleHook(componentName, styleFn, getDefaultToken, Object.assign({\n    resetStyle: false,\n    // Sub Style should default after root one\n    order: -998\n  }, options));\n  const StyledComponent = _ref2 => {\n    let {\n      prefixCls,\n      rootCls = prefixCls\n    } = _ref2;\n    useStyle(prefixCls, rootCls);\n    return null;\n  };\n  if (process.env.NODE_ENV !== 'production') {\n    StyledComponent.displayName = `SubStyle_${Array.isArray(componentName) ? componentName.join('.') : componentName}`;\n  }\n  return StyledComponent;\n};\nconst genCSSVarRegister = (component, getDefaultToken, options) => {\n  function prefixToken(key) {\n    return `${component}${key.slice(0, 1).toUpperCase()}${key.slice(1)}`;\n  }\n  const {\n    unitless: originUnitless = {},\n    injectStyle = true\n  } = options !== null && options !== void 0 ? options : {};\n  const compUnitless = {\n    [prefixToken('zIndexPopup')]: true\n  };\n  Object.keys(originUnitless).forEach(key => {\n    compUnitless[prefixToken(key)] = originUnitless[key];\n  });\n  const CSSVarRegister = _ref3 => {\n    let {\n      rootCls,\n      cssVar\n    } = _ref3;\n    const [, realToken] = useToken();\n    useCSSVarRegister({\n      path: [component],\n      prefix: cssVar.prefix,\n      key: cssVar === null || cssVar === void 0 ? void 0 : cssVar.key,\n      unitless: Object.assign(Object.assign({}, unitless), compUnitless),\n      ignore,\n      token: realToken,\n      scope: rootCls\n    }, () => {\n      const defaultToken = getDefaultComponentToken(component, realToken, getDefaultToken);\n      const componentToken = getComponentToken(component, realToken, defaultToken, {\n        deprecatedTokens: options === null || options === void 0 ? void 0 : options.deprecatedTokens\n      });\n      Object.keys(defaultToken).forEach(key => {\n        componentToken[prefixToken(key)] = componentToken[key];\n        delete componentToken[key];\n      });\n      return componentToken;\n    });\n    return null;\n  };\n  const useCSSVar = rootCls => {\n    const [,,,, cssVar] = useToken();\n    return [node => injectStyle && cssVar ? ( /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(CSSVarRegister, {\n      rootCls: rootCls,\n      cssVar: cssVar,\n      component: component\n    }), node)) : node, cssVar === null || cssVar === void 0 ? void 0 : cssVar.key];\n  };\n  return useCSSVar;\n};\nexport const genStyleHooks = (component, styleFn, getDefaultToken, options) => {\n  const useStyle = genComponentStyleHook(component, styleFn, getDefaultToken, options);\n  const useCSSVar = genCSSVarRegister(Array.isArray(component) ? component[0] : component, getDefaultToken, options);\n  return function (prefixCls) {\n    let rootCls = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : prefixCls;\n    const [, hashId] = useStyle(prefixCls, rootCls);\n    const [wrapCSSVar, cssVarCls] = useCSSVar(rootCls);\n    return [wrapCSSVar, hashId, cssVarCls];\n  };\n};","map":{"version":3,"names":["React","useContext","token2CSSVar","useCSSVarRegister","useStyleRegister","warning","ConfigContext","genCommonStyle","genLinkStyle","useToken","ignore","unitless","genCalc","genMaxMin","statisticToken","merge","mergeToken","useResetIconStyle","getDefaultComponentToken","component","token","getDefaultToken","_a","getComponentToken","defaultToken","options","customToken","Object","assign","deprecatedTokens","forEach","_ref","oldTokenKey","newTokenKey","process","env","NODE_ENV","String","mergedToken","keys","key","getCompVarPrefix","prefix","replace","filter","Boolean","join","genComponentStyleHook","componentName","styleFn","arguments","length","undefined","cells","Array","isArray","concatComponent","prefixCls","rootCls","theme","realToken","hashId","cssVar","getPrefixCls","iconPrefixCls","csp","rootPrefixCls","type","calc","max","min","sharedConfig","nonce","clientOnly","order","path","wrapSSR","injectStyle","proxyToken","flush","defaultComponentToken","componentCls","componentToken","iconCls","antCls","styleInterpolation","resetStyle","genSubStyleComponent","useStyle","StyledComponent","_ref2","displayName","genCSSVarRegister","prefixToken","slice","toUpperCase","originUnitless","compUnitless","CSSVarRegister","_ref3","scope","useCSSVar","node","createElement","Fragment","genStyleHooks","wrapCSSVar","cssVarCls"],"sources":["/Users/shanyi/Desktop/Projects/UC_Trains_Voice/react-demo/node_modules/antd/es/theme/util/genComponentStyleHook.js"],"sourcesContent":["\"use client\";\n\nimport React, { useContext } from 'react';\nimport { token2CSSVar, useCSSVarRegister, useStyleRegister } from '@ant-design/cssinjs';\nimport { warning } from 'rc-util';\nimport { ConfigContext } from '../../config-provider/context';\nimport { genCommonStyle, genLinkStyle } from '../../style';\nimport useToken, { ignore, unitless } from '../useToken';\nimport genCalc from './calc';\nimport genMaxMin from './maxmin';\nimport statisticToken, { merge as mergeToken } from './statistic';\nimport useResetIconStyle from './useResetIconStyle';\nconst getDefaultComponentToken = (component, token, getDefaultToken) => {\n  var _a;\n  if (typeof getDefaultToken === 'function') {\n    return getDefaultToken(mergeToken(token, (_a = token[component]) !== null && _a !== void 0 ? _a : {}));\n  }\n  return getDefaultToken !== null && getDefaultToken !== void 0 ? getDefaultToken : {};\n};\nconst getComponentToken = (component, token, defaultToken, options) => {\n  const customToken = Object.assign({}, token[component]);\n  if (options === null || options === void 0 ? void 0 : options.deprecatedTokens) {\n    const {\n      deprecatedTokens\n    } = options;\n    deprecatedTokens.forEach(_ref => {\n      let [oldTokenKey, newTokenKey] = _ref;\n      var _a;\n      if (process.env.NODE_ENV !== 'production') {\n        process.env.NODE_ENV !== \"production\" ? warning(!(customToken === null || customToken === void 0 ? void 0 : customToken[oldTokenKey]), `Component Token \\`${String(oldTokenKey)}\\` of ${component} is deprecated. Please use \\`${String(newTokenKey)}\\` instead.`) : void 0;\n      }\n      // Should wrap with `if` clause, or there will be `undefined` in object.\n      if ((customToken === null || customToken === void 0 ? void 0 : customToken[oldTokenKey]) || (customToken === null || customToken === void 0 ? void 0 : customToken[newTokenKey])) {\n        (_a = customToken[newTokenKey]) !== null && _a !== void 0 ? _a : customToken[newTokenKey] = customToken === null || customToken === void 0 ? void 0 : customToken[oldTokenKey];\n      }\n    });\n  }\n  const mergedToken = Object.assign(Object.assign({}, defaultToken), customToken);\n  // Remove same value as global token to minimize size\n  Object.keys(mergedToken).forEach(key => {\n    if (mergedToken[key] === token[key]) {\n      delete mergedToken[key];\n    }\n  });\n  return mergedToken;\n};\nconst getCompVarPrefix = (component, prefix) => `${[prefix, component.replace(/([A-Z]+)([A-Z][a-z]+)/g, '$1-$2').replace(/([a-z])([A-Z])/g, '$1-$2')].filter(Boolean).join('-')}`;\nexport default function genComponentStyleHook(componentName, styleFn, getDefaultToken) {\n  let options = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n  const cells = Array.isArray(componentName) ? componentName : [componentName, componentName];\n  const [component] = cells;\n  const concatComponent = cells.join('-');\n  return function (prefixCls) {\n    let rootCls = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : prefixCls;\n    const [theme, realToken, hashId, token, cssVar] = useToken();\n    const {\n      getPrefixCls,\n      iconPrefixCls,\n      csp\n    } = useContext(ConfigContext);\n    const rootPrefixCls = getPrefixCls();\n    const type = cssVar ? 'css' : 'js';\n    const calc = genCalc(type);\n    const {\n      max,\n      min\n    } = genMaxMin(type);\n    // Shared config\n    const sharedConfig = {\n      theme,\n      token,\n      hashId,\n      nonce: () => csp === null || csp === void 0 ? void 0 : csp.nonce,\n      clientOnly: options.clientOnly,\n      // antd is always at top of styles\n      order: options.order || -999\n    };\n    // Generate style for all a tags in antd component.\n    useStyleRegister(Object.assign(Object.assign({}, sharedConfig), {\n      clientOnly: false,\n      path: ['Shared', rootPrefixCls]\n    }), () => [{\n      // Link\n      '&': genLinkStyle(token)\n    }]);\n    // Generate style for icons\n    useResetIconStyle(iconPrefixCls, csp);\n    const wrapSSR = useStyleRegister(Object.assign(Object.assign({}, sharedConfig), {\n      path: [concatComponent, prefixCls, iconPrefixCls]\n    }), () => {\n      if (options.injectStyle === false) {\n        return [];\n      }\n      const {\n        token: proxyToken,\n        flush\n      } = statisticToken(token);\n      const defaultComponentToken = getDefaultComponentToken(component, realToken, getDefaultToken);\n      const componentCls = `.${prefixCls}`;\n      const componentToken = getComponentToken(component, realToken, defaultComponentToken, {\n        deprecatedTokens: options.deprecatedTokens\n      });\n      if (cssVar) {\n        Object.keys(defaultComponentToken).forEach(key => {\n          defaultComponentToken[key] = `var(${token2CSSVar(key, getCompVarPrefix(component, cssVar.prefix))})`;\n        });\n      }\n      const mergedToken = mergeToken(proxyToken, {\n        componentCls,\n        prefixCls,\n        iconCls: `.${iconPrefixCls}`,\n        antCls: `.${rootPrefixCls}`,\n        calc,\n        // @ts-ignore\n        max,\n        // @ts-ignore\n        min\n      }, cssVar ? defaultComponentToken : componentToken);\n      const styleInterpolation = styleFn(mergedToken, {\n        hashId,\n        prefixCls,\n        rootPrefixCls,\n        iconPrefixCls\n      });\n      flush(component, componentToken);\n      return [options.resetStyle === false ? null : genCommonStyle(mergedToken, prefixCls, rootCls), styleInterpolation];\n    });\n    return [wrapSSR, hashId];\n  };\n}\nexport const genSubStyleComponent = (componentName, styleFn, getDefaultToken, options) => {\n  const useStyle = genComponentStyleHook(componentName, styleFn, getDefaultToken, Object.assign({\n    resetStyle: false,\n    // Sub Style should default after root one\n    order: -998\n  }, options));\n  const StyledComponent = _ref2 => {\n    let {\n      prefixCls,\n      rootCls = prefixCls\n    } = _ref2;\n    useStyle(prefixCls, rootCls);\n    return null;\n  };\n  if (process.env.NODE_ENV !== 'production') {\n    StyledComponent.displayName = `SubStyle_${Array.isArray(componentName) ? componentName.join('.') : componentName}`;\n  }\n  return StyledComponent;\n};\nconst genCSSVarRegister = (component, getDefaultToken, options) => {\n  function prefixToken(key) {\n    return `${component}${key.slice(0, 1).toUpperCase()}${key.slice(1)}`;\n  }\n  const {\n    unitless: originUnitless = {},\n    injectStyle = true\n  } = options !== null && options !== void 0 ? options : {};\n  const compUnitless = {\n    [prefixToken('zIndexPopup')]: true\n  };\n  Object.keys(originUnitless).forEach(key => {\n    compUnitless[prefixToken(key)] = originUnitless[key];\n  });\n  const CSSVarRegister = _ref3 => {\n    let {\n      rootCls,\n      cssVar\n    } = _ref3;\n    const [, realToken] = useToken();\n    useCSSVarRegister({\n      path: [component],\n      prefix: cssVar.prefix,\n      key: cssVar === null || cssVar === void 0 ? void 0 : cssVar.key,\n      unitless: Object.assign(Object.assign({}, unitless), compUnitless),\n      ignore,\n      token: realToken,\n      scope: rootCls\n    }, () => {\n      const defaultToken = getDefaultComponentToken(component, realToken, getDefaultToken);\n      const componentToken = getComponentToken(component, realToken, defaultToken, {\n        deprecatedTokens: options === null || options === void 0 ? void 0 : options.deprecatedTokens\n      });\n      Object.keys(defaultToken).forEach(key => {\n        componentToken[prefixToken(key)] = componentToken[key];\n        delete componentToken[key];\n      });\n      return componentToken;\n    });\n    return null;\n  };\n  const useCSSVar = rootCls => {\n    const [,,,, cssVar] = useToken();\n    return [node => injectStyle && cssVar ? ( /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(CSSVarRegister, {\n      rootCls: rootCls,\n      cssVar: cssVar,\n      component: component\n    }), node)) : node, cssVar === null || cssVar === void 0 ? void 0 : cssVar.key];\n  };\n  return useCSSVar;\n};\nexport const genStyleHooks = (component, styleFn, getDefaultToken, options) => {\n  const useStyle = genComponentStyleHook(component, styleFn, getDefaultToken, options);\n  const useCSSVar = genCSSVarRegister(Array.isArray(component) ? component[0] : component, getDefaultToken, options);\n  return function (prefixCls) {\n    let rootCls = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : prefixCls;\n    const [, hashId] = useStyle(prefixCls, rootCls);\n    const [wrapCSSVar, cssVarCls] = useCSSVar(rootCls);\n    return [wrapCSSVar, hashId, cssVarCls];\n  };\n};"],"mappings":"AAAA,YAAY;;AAEZ,OAAOA,KAAK,IAAIC,UAAU,QAAQ,OAAO;AACzC,SAASC,YAAY,EAAEC,iBAAiB,EAAEC,gBAAgB,QAAQ,qBAAqB;AACvF,SAASC,OAAO,QAAQ,SAAS;AACjC,SAASC,aAAa,QAAQ,+BAA+B;AAC7D,SAASC,cAAc,EAAEC,YAAY,QAAQ,aAAa;AAC1D,OAAOC,QAAQ,IAAIC,MAAM,EAAEC,QAAQ,QAAQ,aAAa;AACxD,OAAOC,OAAO,MAAM,QAAQ;AAC5B,OAAOC,SAAS,MAAM,UAAU;AAChC,OAAOC,cAAc,IAAIC,KAAK,IAAIC,UAAU,QAAQ,aAAa;AACjE,OAAOC,iBAAiB,MAAM,qBAAqB;AACnD,MAAMC,wBAAwB,GAAGA,CAACC,SAAS,EAAEC,KAAK,EAAEC,eAAe,KAAK;EACtE,IAAIC,EAAE;EACN,IAAI,OAAOD,eAAe,KAAK,UAAU,EAAE;IACzC,OAAOA,eAAe,CAACL,UAAU,CAACI,KAAK,EAAE,CAACE,EAAE,GAAGF,KAAK,CAACD,SAAS,CAAC,MAAM,IAAI,IAAIG,EAAE,KAAK,KAAK,CAAC,GAAGA,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;EACxG;EACA,OAAOD,eAAe,KAAK,IAAI,IAAIA,eAAe,KAAK,KAAK,CAAC,GAAGA,eAAe,GAAG,CAAC,CAAC;AACtF,CAAC;AACD,MAAME,iBAAiB,GAAGA,CAACJ,SAAS,EAAEC,KAAK,EAAEI,YAAY,EAAEC,OAAO,KAAK;EACrE,MAAMC,WAAW,GAAGC,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAER,KAAK,CAACD,SAAS,CAAC,CAAC;EACvD,IAAIM,OAAO,KAAK,IAAI,IAAIA,OAAO,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,OAAO,CAACI,gBAAgB,EAAE;IAC9E,MAAM;MACJA;IACF,CAAC,GAAGJ,OAAO;IACXI,gBAAgB,CAACC,OAAO,CAACC,IAAI,IAAI;MAC/B,IAAI,CAACC,WAAW,EAAEC,WAAW,CAAC,GAAGF,IAAI;MACrC,IAAIT,EAAE;MACN,IAAIY,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;QACzCF,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,GAAG/B,OAAO,CAAC,EAAEqB,WAAW,KAAK,IAAI,IAAIA,WAAW,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,WAAW,CAACM,WAAW,CAAC,CAAC,EAAG,qBAAoBK,MAAM,CAACL,WAAW,CAAE,SAAQb,SAAU,gCAA+BkB,MAAM,CAACJ,WAAW,CAAE,aAAY,CAAC,GAAG,KAAK,CAAC;MAC7Q;MACA;MACA,IAAI,CAACP,WAAW,KAAK,IAAI,IAAIA,WAAW,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,WAAW,CAACM,WAAW,CAAC,MAAMN,WAAW,KAAK,IAAI,IAAIA,WAAW,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,WAAW,CAACO,WAAW,CAAC,CAAC,EAAE;QAChL,CAACX,EAAE,GAAGI,WAAW,CAACO,WAAW,CAAC,MAAM,IAAI,IAAIX,EAAE,KAAK,KAAK,CAAC,GAAGA,EAAE,GAAGI,WAAW,CAACO,WAAW,CAAC,GAAGP,WAAW,KAAK,IAAI,IAAIA,WAAW,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,WAAW,CAACM,WAAW,CAAC;MAChL;IACF,CAAC,CAAC;EACJ;EACA,MAAMM,WAAW,GAAGX,MAAM,CAACC,MAAM,CAACD,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAEJ,YAAY,CAAC,EAAEE,WAAW,CAAC;EAC/E;EACAC,MAAM,CAACY,IAAI,CAACD,WAAW,CAAC,CAACR,OAAO,CAACU,GAAG,IAAI;IACtC,IAAIF,WAAW,CAACE,GAAG,CAAC,KAAKpB,KAAK,CAACoB,GAAG,CAAC,EAAE;MACnC,OAAOF,WAAW,CAACE,GAAG,CAAC;IACzB;EACF,CAAC,CAAC;EACF,OAAOF,WAAW;AACpB,CAAC;AACD,MAAMG,gBAAgB,GAAGA,CAACtB,SAAS,EAAEuB,MAAM,KAAM,GAAE,CAACA,MAAM,EAAEvB,SAAS,CAACwB,OAAO,CAAC,wBAAwB,EAAE,OAAO,CAAC,CAACA,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC,CAACC,IAAI,CAAC,GAAG,CAAE,EAAC;AACjL,eAAe,SAASC,qBAAqBA,CAACC,aAAa,EAAEC,OAAO,EAAE5B,eAAe,EAAE;EACrF,IAAII,OAAO,GAAGyB,SAAS,CAACC,MAAM,GAAG,CAAC,IAAID,SAAS,CAAC,CAAC,CAAC,KAAKE,SAAS,GAAGF,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;EACpF,MAAMG,KAAK,GAAGC,KAAK,CAACC,OAAO,CAACP,aAAa,CAAC,GAAGA,aAAa,GAAG,CAACA,aAAa,EAAEA,aAAa,CAAC;EAC3F,MAAM,CAAC7B,SAAS,CAAC,GAAGkC,KAAK;EACzB,MAAMG,eAAe,GAAGH,KAAK,CAACP,IAAI,CAAC,GAAG,CAAC;EACvC,OAAO,UAAUW,SAAS,EAAE;IAC1B,IAAIC,OAAO,GAAGR,SAAS,CAACC,MAAM,GAAG,CAAC,IAAID,SAAS,CAAC,CAAC,CAAC,KAAKE,SAAS,GAAGF,SAAS,CAAC,CAAC,CAAC,GAAGO,SAAS;IAC3F,MAAM,CAACE,KAAK,EAAEC,SAAS,EAAEC,MAAM,EAAEzC,KAAK,EAAE0C,MAAM,CAAC,GAAGrD,QAAQ,CAAC,CAAC;IAC5D,MAAM;MACJsD,YAAY;MACZC,aAAa;MACbC;IACF,CAAC,GAAGhE,UAAU,CAACK,aAAa,CAAC;IAC7B,MAAM4D,aAAa,GAAGH,YAAY,CAAC,CAAC;IACpC,MAAMI,IAAI,GAAGL,MAAM,GAAG,KAAK,GAAG,IAAI;IAClC,MAAMM,IAAI,GAAGxD,OAAO,CAACuD,IAAI,CAAC;IAC1B,MAAM;MACJE,GAAG;MACHC;IACF,CAAC,GAAGzD,SAAS,CAACsD,IAAI,CAAC;IACnB;IACA,MAAMI,YAAY,GAAG;MACnBZ,KAAK;MACLvC,KAAK;MACLyC,MAAM;MACNW,KAAK,EAAEA,CAAA,KAAMP,GAAG,KAAK,IAAI,IAAIA,GAAG,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,GAAG,CAACO,KAAK;MAChEC,UAAU,EAAEhD,OAAO,CAACgD,UAAU;MAC9B;MACAC,KAAK,EAAEjD,OAAO,CAACiD,KAAK,IAAI,CAAC;IAC3B,CAAC;IACD;IACAtE,gBAAgB,CAACuB,MAAM,CAACC,MAAM,CAACD,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAE2C,YAAY,CAAC,EAAE;MAC9DE,UAAU,EAAE,KAAK;MACjBE,IAAI,EAAE,CAAC,QAAQ,EAAET,aAAa;IAChC,CAAC,CAAC,EAAE,MAAM,CAAC;MACT;MACA,GAAG,EAAE1D,YAAY,CAACY,KAAK;IACzB,CAAC,CAAC,CAAC;IACH;IACAH,iBAAiB,CAAC+C,aAAa,EAAEC,GAAG,CAAC;IACrC,MAAMW,OAAO,GAAGxE,gBAAgB,CAACuB,MAAM,CAACC,MAAM,CAACD,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAE2C,YAAY,CAAC,EAAE;MAC9EI,IAAI,EAAE,CAACnB,eAAe,EAAEC,SAAS,EAAEO,aAAa;IAClD,CAAC,CAAC,EAAE,MAAM;MACR,IAAIvC,OAAO,CAACoD,WAAW,KAAK,KAAK,EAAE;QACjC,OAAO,EAAE;MACX;MACA,MAAM;QACJzD,KAAK,EAAE0D,UAAU;QACjBC;MACF,CAAC,GAAGjE,cAAc,CAACM,KAAK,CAAC;MACzB,MAAM4D,qBAAqB,GAAG9D,wBAAwB,CAACC,SAAS,EAAEyC,SAAS,EAAEvC,eAAe,CAAC;MAC7F,MAAM4D,YAAY,GAAI,IAAGxB,SAAU,EAAC;MACpC,MAAMyB,cAAc,GAAG3D,iBAAiB,CAACJ,SAAS,EAAEyC,SAAS,EAAEoB,qBAAqB,EAAE;QACpFnD,gBAAgB,EAAEJ,OAAO,CAACI;MAC5B,CAAC,CAAC;MACF,IAAIiC,MAAM,EAAE;QACVnC,MAAM,CAACY,IAAI,CAACyC,qBAAqB,CAAC,CAAClD,OAAO,CAACU,GAAG,IAAI;UAChDwC,qBAAqB,CAACxC,GAAG,CAAC,GAAI,OAAMtC,YAAY,CAACsC,GAAG,EAAEC,gBAAgB,CAACtB,SAAS,EAAE2C,MAAM,CAACpB,MAAM,CAAC,CAAE,GAAE;QACtG,CAAC,CAAC;MACJ;MACA,MAAMJ,WAAW,GAAGtB,UAAU,CAAC8D,UAAU,EAAE;QACzCG,YAAY;QACZxB,SAAS;QACT0B,OAAO,EAAG,IAAGnB,aAAc,EAAC;QAC5BoB,MAAM,EAAG,IAAGlB,aAAc,EAAC;QAC3BE,IAAI;QACJ;QACAC,GAAG;QACH;QACAC;MACF,CAAC,EAAER,MAAM,GAAGkB,qBAAqB,GAAGE,cAAc,CAAC;MACnD,MAAMG,kBAAkB,GAAGpC,OAAO,CAACX,WAAW,EAAE;QAC9CuB,MAAM;QACNJ,SAAS;QACTS,aAAa;QACbF;MACF,CAAC,CAAC;MACFe,KAAK,CAAC5D,SAAS,EAAE+D,cAAc,CAAC;MAChC,OAAO,CAACzD,OAAO,CAAC6D,UAAU,KAAK,KAAK,GAAG,IAAI,GAAG/E,cAAc,CAAC+B,WAAW,EAAEmB,SAAS,EAAEC,OAAO,CAAC,EAAE2B,kBAAkB,CAAC;IACpH,CAAC,CAAC;IACF,OAAO,CAACT,OAAO,EAAEf,MAAM,CAAC;EAC1B,CAAC;AACH;AACA,OAAO,MAAM0B,oBAAoB,GAAGA,CAACvC,aAAa,EAAEC,OAAO,EAAE5B,eAAe,EAAEI,OAAO,KAAK;EACxF,MAAM+D,QAAQ,GAAGzC,qBAAqB,CAACC,aAAa,EAAEC,OAAO,EAAE5B,eAAe,EAAEM,MAAM,CAACC,MAAM,CAAC;IAC5F0D,UAAU,EAAE,KAAK;IACjB;IACAZ,KAAK,EAAE,CAAC;EACV,CAAC,EAAEjD,OAAO,CAAC,CAAC;EACZ,MAAMgE,eAAe,GAAGC,KAAK,IAAI;IAC/B,IAAI;MACFjC,SAAS;MACTC,OAAO,GAAGD;IACZ,CAAC,GAAGiC,KAAK;IACTF,QAAQ,CAAC/B,SAAS,EAAEC,OAAO,CAAC;IAC5B,OAAO,IAAI;EACb,CAAC;EACD,IAAIxB,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,YAAY,EAAE;IACzCqD,eAAe,CAACE,WAAW,GAAI,YAAWrC,KAAK,CAACC,OAAO,CAACP,aAAa,CAAC,GAAGA,aAAa,CAACF,IAAI,CAAC,GAAG,CAAC,GAAGE,aAAc,EAAC;EACpH;EACA,OAAOyC,eAAe;AACxB,CAAC;AACD,MAAMG,iBAAiB,GAAGA,CAACzE,SAAS,EAAEE,eAAe,EAAEI,OAAO,KAAK;EACjE,SAASoE,WAAWA,CAACrD,GAAG,EAAE;IACxB,OAAQ,GAAErB,SAAU,GAAEqB,GAAG,CAACsD,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAACC,WAAW,CAAC,CAAE,GAAEvD,GAAG,CAACsD,KAAK,CAAC,CAAC,CAAE,EAAC;EACtE;EACA,MAAM;IACJnF,QAAQ,EAAEqF,cAAc,GAAG,CAAC,CAAC;IAC7BnB,WAAW,GAAG;EAChB,CAAC,GAAGpD,OAAO,KAAK,IAAI,IAAIA,OAAO,KAAK,KAAK,CAAC,GAAGA,OAAO,GAAG,CAAC,CAAC;EACzD,MAAMwE,YAAY,GAAG;IACnB,CAACJ,WAAW,CAAC,aAAa,CAAC,GAAG;EAChC,CAAC;EACDlE,MAAM,CAACY,IAAI,CAACyD,cAAc,CAAC,CAAClE,OAAO,CAACU,GAAG,IAAI;IACzCyD,YAAY,CAACJ,WAAW,CAACrD,GAAG,CAAC,CAAC,GAAGwD,cAAc,CAACxD,GAAG,CAAC;EACtD,CAAC,CAAC;EACF,MAAM0D,cAAc,GAAGC,KAAK,IAAI;IAC9B,IAAI;MACFzC,OAAO;MACPI;IACF,CAAC,GAAGqC,KAAK;IACT,MAAM,GAAGvC,SAAS,CAAC,GAAGnD,QAAQ,CAAC,CAAC;IAChCN,iBAAiB,CAAC;MAChBwE,IAAI,EAAE,CAACxD,SAAS,CAAC;MACjBuB,MAAM,EAAEoB,MAAM,CAACpB,MAAM;MACrBF,GAAG,EAAEsB,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACtB,GAAG;MAC/D7B,QAAQ,EAAEgB,MAAM,CAACC,MAAM,CAACD,MAAM,CAACC,MAAM,CAAC,CAAC,CAAC,EAAEjB,QAAQ,CAAC,EAAEsF,YAAY,CAAC;MAClEvF,MAAM;MACNU,KAAK,EAAEwC,SAAS;MAChBwC,KAAK,EAAE1C;IACT,CAAC,EAAE,MAAM;MACP,MAAMlC,YAAY,GAAGN,wBAAwB,CAACC,SAAS,EAAEyC,SAAS,EAAEvC,eAAe,CAAC;MACpF,MAAM6D,cAAc,GAAG3D,iBAAiB,CAACJ,SAAS,EAAEyC,SAAS,EAAEpC,YAAY,EAAE;QAC3EK,gBAAgB,EAAEJ,OAAO,KAAK,IAAI,IAAIA,OAAO,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,OAAO,CAACI;MAC9E,CAAC,CAAC;MACFF,MAAM,CAACY,IAAI,CAACf,YAAY,CAAC,CAACM,OAAO,CAACU,GAAG,IAAI;QACvC0C,cAAc,CAACW,WAAW,CAACrD,GAAG,CAAC,CAAC,GAAG0C,cAAc,CAAC1C,GAAG,CAAC;QACtD,OAAO0C,cAAc,CAAC1C,GAAG,CAAC;MAC5B,CAAC,CAAC;MACF,OAAO0C,cAAc;IACvB,CAAC,CAAC;IACF,OAAO,IAAI;EACb,CAAC;EACD,MAAMmB,SAAS,GAAG3C,OAAO,IAAI;IAC3B,MAAM,MAAMI,MAAM,CAAC,GAAGrD,QAAQ,CAAC,CAAC;IAChC,OAAO,CAAC6F,IAAI,IAAIzB,WAAW,IAAIf,MAAM,KAAK,aAAa9D,KAAK,CAACuG,aAAa,CAACvG,KAAK,CAACwG,QAAQ,EAAE,IAAI,EAAE,aAAaxG,KAAK,CAACuG,aAAa,CAACL,cAAc,EAAE;MAChJxC,OAAO,EAAEA,OAAO;MAChBI,MAAM,EAAEA,MAAM;MACd3C,SAAS,EAAEA;IACb,CAAC,CAAC,EAAEmF,IAAI,CAAC,IAAIA,IAAI,EAAExC,MAAM,KAAK,IAAI,IAAIA,MAAM,KAAK,KAAK,CAAC,GAAG,KAAK,CAAC,GAAGA,MAAM,CAACtB,GAAG,CAAC;EAChF,CAAC;EACD,OAAO6D,SAAS;AAClB,CAAC;AACD,OAAO,MAAMI,aAAa,GAAGA,CAACtF,SAAS,EAAE8B,OAAO,EAAE5B,eAAe,EAAEI,OAAO,KAAK;EAC7E,MAAM+D,QAAQ,GAAGzC,qBAAqB,CAAC5B,SAAS,EAAE8B,OAAO,EAAE5B,eAAe,EAAEI,OAAO,CAAC;EACpF,MAAM4E,SAAS,GAAGT,iBAAiB,CAACtC,KAAK,CAACC,OAAO,CAACpC,SAAS,CAAC,GAAGA,SAAS,CAAC,CAAC,CAAC,GAAGA,SAAS,EAAEE,eAAe,EAAEI,OAAO,CAAC;EAClH,OAAO,UAAUgC,SAAS,EAAE;IAC1B,IAAIC,OAAO,GAAGR,SAAS,CAACC,MAAM,GAAG,CAAC,IAAID,SAAS,CAAC,CAAC,CAAC,KAAKE,SAAS,GAAGF,SAAS,CAAC,CAAC,CAAC,GAAGO,SAAS;IAC3F,MAAM,GAAGI,MAAM,CAAC,GAAG2B,QAAQ,CAAC/B,SAAS,EAAEC,OAAO,CAAC;IAC/C,MAAM,CAACgD,UAAU,EAAEC,SAAS,CAAC,GAAGN,SAAS,CAAC3C,OAAO,CAAC;IAClD,OAAO,CAACgD,UAAU,EAAE7C,MAAM,EAAE8C,SAAS,CAAC;EACxC,CAAC;AACH,CAAC","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}