{"ast":null,"code":"import I18nManager from \"react-native-web/dist/exports/I18nManager\";\nimport Platform from \"react-native-web/dist/exports/Platform\";\nimport color from 'color';\nimport { black, white } from \"../../styles/themes/v2/colors\";\nimport getContrastingColor from \"../../utils/getContrastingColor\";\nexport const getCombinedStyles = ({\n  isAnimatedFromRight,\n  isIconStatic,\n  distance,\n  animFAB\n}) => {\n  const {\n    isRTL\n  } = I18nManager;\n  const defaultPositionStyles = {\n    left: -distance,\n    right: undefined\n  };\n  const combinedStyles = {\n    innerWrapper: Object.assign({}, defaultPositionStyles),\n    iconWrapper: Object.assign({}, defaultPositionStyles),\n    absoluteFill: {}\n  };\n  const animatedFromRight = isAnimatedFromRight && !isRTL;\n  const animatedFromRightRTL = isAnimatedFromRight && isRTL;\n  const animatedFromLeft = !isAnimatedFromRight && !isRTL;\n  const animatedFromLeftRTL = !isAnimatedFromRight && isRTL;\n  if (animatedFromRight) {\n    combinedStyles.innerWrapper.transform = [{\n      translateX: animFAB.interpolate({\n        inputRange: [distance, 0],\n        outputRange: [distance, 0]\n      })\n    }];\n    combinedStyles.iconWrapper.transform = [{\n      translateX: isIconStatic ? 0 : animFAB\n    }];\n    combinedStyles.absoluteFill.transform = [{\n      translateX: animFAB.interpolate({\n        inputRange: [distance, 0],\n        outputRange: [Math.abs(distance) / 2, Math.abs(distance)]\n      })\n    }];\n  } else if (animatedFromRightRTL) {\n    combinedStyles.iconWrapper.transform = [{\n      translateX: isIconStatic ? 0 : animFAB.interpolate({\n        inputRange: [distance, 0],\n        outputRange: [-distance, 0]\n      })\n    }];\n    combinedStyles.innerWrapper.transform = [{\n      translateX: animFAB.interpolate({\n        inputRange: [distance, 0],\n        outputRange: [-distance, 0]\n      })\n    }];\n    combinedStyles.absoluteFill.transform = [{\n      translateX: animFAB.interpolate({\n        inputRange: [distance, 0],\n        outputRange: [0, distance]\n      })\n    }];\n  } else if (animatedFromLeft) {\n    combinedStyles.iconWrapper.transform = [{\n      translateX: isIconStatic ? distance : animFAB.interpolate({\n        inputRange: [0, distance],\n        outputRange: [distance, distance * 2]\n      })\n    }];\n    combinedStyles.innerWrapper.transform = [{\n      translateX: animFAB\n    }];\n    combinedStyles.absoluteFill.transform = [{\n      translateX: animFAB.interpolate({\n        inputRange: [0, distance],\n        outputRange: [0, Math.abs(distance) / 2]\n      })\n    }];\n  } else if (animatedFromLeftRTL) {\n    combinedStyles.iconWrapper.transform = [{\n      translateX: isIconStatic ? animFAB.interpolate({\n        inputRange: [0, distance],\n        outputRange: [-distance, -distance * 2]\n      }) : -distance\n    }];\n    combinedStyles.innerWrapper.transform = [{\n      translateX: animFAB.interpolate({\n        inputRange: [0, distance],\n        outputRange: [0, -distance]\n      })\n    }];\n    combinedStyles.absoluteFill.transform = [{\n      translateX: animFAB.interpolate({\n        inputRange: [0, distance],\n        outputRange: [0, -distance]\n      })\n    }];\n  }\n  return combinedStyles;\n};\nconst getBackgroundColor = ({\n  theme,\n  isVariant,\n  disabled,\n  customBackgroundColor\n}) => {\n  var _theme$colors;\n  if (customBackgroundColor && !disabled) {\n    return customBackgroundColor;\n  }\n  if (theme.isV3) {\n    if (disabled) {\n      return theme.colors.surfaceDisabled;\n    }\n    if (isVariant('primary')) {\n      return theme.colors.primaryContainer;\n    }\n    if (isVariant('secondary')) {\n      return theme.colors.secondaryContainer;\n    }\n    if (isVariant('tertiary')) {\n      return theme.colors.tertiaryContainer;\n    }\n    if (isVariant('surface')) {\n      return theme.colors.elevation.level3;\n    }\n  }\n  if (disabled) {\n    if (theme.dark) {\n      return color(white).alpha(0.12).rgb().string();\n    }\n    return color(black).alpha(0.12).rgb().string();\n  }\n  return (_theme$colors = theme.colors) === null || _theme$colors === void 0 ? void 0 : _theme$colors.accent;\n};\nconst getForegroundColor = ({\n  theme,\n  isVariant,\n  disabled,\n  backgroundColor,\n  customColor\n}) => {\n  if (typeof customColor !== 'undefined' && !disabled) {\n    return customColor;\n  }\n  if (theme.isV3) {\n    if (disabled) {\n      return theme.colors.onSurfaceDisabled;\n    }\n    if (isVariant('primary')) {\n      return theme.colors.onPrimaryContainer;\n    }\n    if (isVariant('secondary')) {\n      return theme.colors.onSecondaryContainer;\n    }\n    if (isVariant('tertiary')) {\n      return theme.colors.onTertiaryContainer;\n    }\n    if (isVariant('surface')) {\n      return theme.colors.primary;\n    }\n  }\n  if (disabled) {\n    if (theme.dark) {\n      return color(white).alpha(0.32).rgb().string();\n    }\n    return color(black).alpha(0.32).rgb().string();\n  }\n  if (backgroundColor) {\n    return getContrastingColor(backgroundColor || white, white, 'rgba(0, 0, 0, .54)');\n  }\n  return getContrastingColor(white, white, 'rgba(0, 0, 0, .54)');\n};\nexport const getFABColors = ({\n  theme,\n  variant,\n  disabled,\n  customColor,\n  customBackgroundColor,\n  customRippleColor\n}) => {\n  const isVariant = variantToCompare => {\n    return variant === variantToCompare;\n  };\n  const baseFABColorProps = {\n    theme,\n    isVariant,\n    disabled\n  };\n  const backgroundColor = getBackgroundColor(Object.assign({}, baseFABColorProps, {\n    customBackgroundColor\n  }));\n  const foregroundColor = getForegroundColor(Object.assign({}, baseFABColorProps, {\n    customColor,\n    backgroundColor\n  }));\n  return {\n    backgroundColor,\n    foregroundColor,\n    rippleColor: customRippleColor || color(foregroundColor).alpha(0.12).rgb().string()\n  };\n};\nconst getLabelColor = ({\n  theme\n}) => {\n  if (theme.isV3) {\n    return theme.colors.onSurface;\n  }\n  if (theme.dark) {\n    return theme.colors.text;\n  }\n  return color(theme.colors.text).fade(0.54).rgb().string();\n};\nconst getBackdropColor = ({\n  theme,\n  customBackdropColor\n}) => {\n  var _theme$colors2;\n  if (customBackdropColor) {\n    return customBackdropColor;\n  }\n  if (theme.isV3) {\n    return color(theme.colors.background).alpha(0.95).rgb().string();\n  }\n  return (_theme$colors2 = theme.colors) === null || _theme$colors2 === void 0 ? void 0 : _theme$colors2.backdrop;\n};\nconst getStackedFABBackgroundColor = ({\n  theme\n}) => {\n  if (theme.isV3) {\n    return theme.colors.elevation.level3;\n  }\n  return theme.colors.surface;\n};\nexport const getFABGroupColors = ({\n  theme,\n  customBackdropColor\n}) => {\n  return {\n    labelColor: getLabelColor({\n      theme\n    }),\n    backdropColor: getBackdropColor({\n      theme,\n      customBackdropColor\n    }),\n    stackedFABBackgroundColor: getStackedFABBackgroundColor({\n      theme\n    })\n  };\n};\nconst standardSize = {\n  height: 56,\n  width: 56,\n  borderRadius: 28\n};\nconst smallSize = {\n  height: 40,\n  width: 40,\n  borderRadius: 28\n};\nconst v3SmallSize = {\n  height: 40,\n  width: 40\n};\nconst v3MediumSize = {\n  height: 56,\n  width: 56\n};\nconst v3LargeSize = {\n  height: 96,\n  width: 96\n};\nconst getCustomFabSize = (customSize, roundness) => ({\n  height: customSize,\n  width: customSize,\n  borderRadius: roundness === 0 ? 0 : customSize / roundness\n});\nexport const getFabStyle = ({\n  size,\n  theme,\n  customSize\n}) => {\n  const {\n    isV3,\n    roundness\n  } = theme;\n  if (customSize) return getCustomFabSize(customSize, roundness);\n  if (isV3) {\n    switch (size) {\n      case 'small':\n        return Object.assign({}, v3SmallSize, {\n          borderRadius: 3 * roundness\n        });\n      case 'medium':\n        return Object.assign({}, v3MediumSize, {\n          borderRadius: 4 * roundness\n        });\n      case 'large':\n        return Object.assign({}, v3LargeSize, {\n          borderRadius: 7 * roundness\n        });\n    }\n  }\n  if (size === 'small') {\n    return smallSize;\n  }\n  return standardSize;\n};\nconst extended = {\n  height: 48,\n  paddingHorizontal: 16\n};\nconst v3Extended = {\n  height: 56,\n  borderRadius: 16,\n  paddingHorizontal: 16\n};\nconst getExtendedFabDimensions = customSize => ({\n  height: customSize,\n  paddingHorizontal: 16\n});\nexport const getExtendedFabStyle = ({\n  customSize,\n  theme\n}) => {\n  if (customSize) return getExtendedFabDimensions(customSize);\n  const {\n    isV3\n  } = theme;\n  return isV3 ? v3Extended : extended;\n};\nlet cachedContext = null;\nconst getCanvasContext = () => {\n  if (cachedContext) {\n    return cachedContext;\n  }\n  const canvas = document.createElement('canvas');\n  cachedContext = canvas.getContext('2d');\n  return cachedContext;\n};\nexport const getLabelSizeWeb = ref => {\n  if (Platform.OS !== 'web' || ref.current === null) {\n    return null;\n  }\n  const canvasContext = getCanvasContext();\n  if (!canvasContext) {\n    return null;\n  }\n  const elementStyles = window.getComputedStyle(ref.current);\n  canvasContext.font = elementStyles.font;\n  const metrics = canvasContext.measureText(ref.current.innerText);\n  return {\n    width: metrics.width,\n    height: (metrics.fontBoundingBoxAscent ?? 0) + (metrics.fontBoundingBoxDescent ?? 0)\n  };\n};","map":{"version":3,"names":["color","black","white","getContrastingColor","getCombinedStyles","isAnimatedFromRight","isIconStatic","distance","animFAB","isRTL","I18nManager","defaultPositionStyles","left","right","undefined","combinedStyles","innerWrapper","Object","assign","iconWrapper","absoluteFill","animatedFromRight","animatedFromRightRTL","animatedFromLeft","animatedFromLeftRTL","transform","translateX","interpolate","inputRange","outputRange","Math","abs","getBackgroundColor","theme","isVariant","disabled","customBackgroundColor","_theme$colors","isV3","colors","surfaceDisabled","primaryContainer","secondaryContainer","tertiaryContainer","elevation","level3","dark","alpha","rgb","string","accent","getForegroundColor","backgroundColor","customColor","onSurfaceDisabled","onPrimaryContainer","onSecondaryContainer","onTertiaryContainer","primary","getFABColors","variant","customRippleColor","variantToCompare","baseFABColorProps","foregroundColor","rippleColor","getLabelColor","onSurface","text","fade","getBackdropColor","customBackdropColor","_theme$colors2","background","backdrop","getStackedFABBackgroundColor","surface","getFABGroupColors","labelColor","backdropColor","stackedFABBackgroundColor","standardSize","height","width","borderRadius","smallSize","v3SmallSize","v3MediumSize","v3LargeSize","getCustomFabSize","customSize","roundness","getFabStyle","size","extended","paddingHorizontal","v3Extended","getExtendedFabDimensions","getExtendedFabStyle","cachedContext","getCanvasContext","canvas","document","createElement","getContext","getLabelSizeWeb","ref","Platform","OS","current","canvasContext","elementStyles","window","getComputedStyle","font","metrics","measureText","innerText","fontBoundingBoxAscent","fontBoundingBoxDescent"],"sources":["/Users/pmouli/Documents/GitHub.nosync/boots-strapper/mobile/node_modules/react-native-paper/src/components/FAB/utils.ts"],"sourcesContent":["import { MutableRefObject } from 'react';\nimport {\n  Animated,\n  ColorValue,\n  I18nManager,\n  Platform,\n  ViewStyle,\n} from 'react-native';\n\nimport color from 'color';\n\nimport { black, white } from '../../styles/themes/v2/colors';\nimport type { InternalTheme } from '../../types';\nimport getContrastingColor from '../../utils/getContrastingColor';\n\ntype GetCombinedStylesProps = {\n  isAnimatedFromRight: boolean;\n  isIconStatic: boolean;\n  distance: number;\n  animFAB: Animated.Value;\n};\n\ntype CombinedStyles = {\n  innerWrapper: Animated.WithAnimatedValue<ViewStyle>;\n  iconWrapper: Animated.WithAnimatedValue<ViewStyle>;\n  absoluteFill: Animated.WithAnimatedValue<ViewStyle>;\n};\n\ntype Variant = 'primary' | 'secondary' | 'tertiary' | 'surface';\n\ntype BaseProps = {\n  isVariant: (variant: Variant) => boolean;\n  theme: InternalTheme;\n  disabled?: boolean;\n};\n\nexport const getCombinedStyles = ({\n  isAnimatedFromRight,\n  isIconStatic,\n  distance,\n  animFAB,\n}: GetCombinedStylesProps): CombinedStyles => {\n  const { isRTL } = I18nManager;\n\n  const defaultPositionStyles = { left: -distance, right: undefined };\n\n  const combinedStyles: CombinedStyles = {\n    innerWrapper: {\n      ...defaultPositionStyles,\n    },\n    iconWrapper: {\n      ...defaultPositionStyles,\n    },\n    absoluteFill: {},\n  };\n\n  const animatedFromRight = isAnimatedFromRight && !isRTL;\n  const animatedFromRightRTL = isAnimatedFromRight && isRTL;\n  const animatedFromLeft = !isAnimatedFromRight && !isRTL;\n  const animatedFromLeftRTL = !isAnimatedFromRight && isRTL;\n\n  if (animatedFromRight) {\n    combinedStyles.innerWrapper.transform = [\n      {\n        translateX: animFAB.interpolate({\n          inputRange: [distance, 0],\n          outputRange: [distance, 0],\n        }),\n      },\n    ];\n    combinedStyles.iconWrapper.transform = [\n      {\n        translateX: isIconStatic ? 0 : animFAB,\n      },\n    ];\n    combinedStyles.absoluteFill.transform = [\n      {\n        translateX: animFAB.interpolate({\n          inputRange: [distance, 0],\n          outputRange: [Math.abs(distance) / 2, Math.abs(distance)],\n        }),\n      },\n    ];\n  } else if (animatedFromRightRTL) {\n    combinedStyles.iconWrapper.transform = [\n      {\n        translateX: isIconStatic\n          ? 0\n          : animFAB.interpolate({\n              inputRange: [distance, 0],\n              outputRange: [-distance, 0],\n            }),\n      },\n    ];\n    combinedStyles.innerWrapper.transform = [\n      {\n        translateX: animFAB.interpolate({\n          inputRange: [distance, 0],\n          outputRange: [-distance, 0],\n        }),\n      },\n    ];\n    combinedStyles.absoluteFill.transform = [\n      {\n        translateX: animFAB.interpolate({\n          inputRange: [distance, 0],\n          outputRange: [0, distance],\n        }),\n      },\n    ];\n  } else if (animatedFromLeft) {\n    combinedStyles.iconWrapper.transform = [\n      {\n        translateX: isIconStatic\n          ? distance\n          : animFAB.interpolate({\n              inputRange: [0, distance],\n              outputRange: [distance, distance * 2],\n            }),\n      },\n    ];\n    combinedStyles.innerWrapper.transform = [\n      {\n        translateX: animFAB,\n      },\n    ];\n    combinedStyles.absoluteFill.transform = [\n      {\n        translateX: animFAB.interpolate({\n          inputRange: [0, distance],\n          outputRange: [0, Math.abs(distance) / 2],\n        }),\n      },\n    ];\n  } else if (animatedFromLeftRTL) {\n    combinedStyles.iconWrapper.transform = [\n      {\n        translateX: isIconStatic\n          ? animFAB.interpolate({\n              inputRange: [0, distance],\n              outputRange: [-distance, -distance * 2],\n            })\n          : -distance,\n      },\n    ];\n    combinedStyles.innerWrapper.transform = [\n      {\n        translateX: animFAB.interpolate({\n          inputRange: [0, distance],\n          outputRange: [0, -distance],\n        }),\n      },\n    ];\n    combinedStyles.absoluteFill.transform = [\n      {\n        translateX: animFAB.interpolate({\n          inputRange: [0, distance],\n          outputRange: [0, -distance],\n        }),\n      },\n    ];\n  }\n\n  return combinedStyles;\n};\n\nconst getBackgroundColor = ({\n  theme,\n  isVariant,\n  disabled,\n  customBackgroundColor,\n}: BaseProps & { customBackgroundColor?: ColorValue }) => {\n  if (customBackgroundColor && !disabled) {\n    return customBackgroundColor;\n  }\n\n  if (theme.isV3) {\n    if (disabled) {\n      return theme.colors.surfaceDisabled;\n    }\n\n    if (isVariant('primary')) {\n      return theme.colors.primaryContainer;\n    }\n\n    if (isVariant('secondary')) {\n      return theme.colors.secondaryContainer;\n    }\n\n    if (isVariant('tertiary')) {\n      return theme.colors.tertiaryContainer;\n    }\n\n    if (isVariant('surface')) {\n      return theme.colors.elevation.level3;\n    }\n  }\n\n  if (disabled) {\n    if (theme.dark) {\n      return color(white).alpha(0.12).rgb().string();\n    }\n    return color(black).alpha(0.12).rgb().string();\n  }\n\n  //@ts-ignore\n  return theme.colors?.accent;\n};\n\nconst getForegroundColor = ({\n  theme,\n  isVariant,\n  disabled,\n  backgroundColor,\n  customColor,\n}: BaseProps & { backgroundColor: string; customColor?: string }) => {\n  if (typeof customColor !== 'undefined' && !disabled) {\n    return customColor;\n  }\n\n  if (theme.isV3) {\n    if (disabled) {\n      return theme.colors.onSurfaceDisabled;\n    }\n\n    if (isVariant('primary')) {\n      return theme.colors.onPrimaryContainer;\n    }\n\n    if (isVariant('secondary')) {\n      return theme.colors.onSecondaryContainer;\n    }\n\n    if (isVariant('tertiary')) {\n      return theme.colors.onTertiaryContainer;\n    }\n\n    if (isVariant('surface')) {\n      return theme.colors.primary;\n    }\n  }\n\n  if (disabled) {\n    if (theme.dark) {\n      return color(white).alpha(0.32).rgb().string();\n    }\n    return color(black).alpha(0.32).rgb().string();\n  }\n\n  if (backgroundColor) {\n    return getContrastingColor(\n      backgroundColor || white,\n      white,\n      'rgba(0, 0, 0, .54)'\n    );\n  }\n\n  return getContrastingColor(white, white, 'rgba(0, 0, 0, .54)');\n};\n\nexport const getFABColors = ({\n  theme,\n  variant,\n  disabled,\n  customColor,\n  customBackgroundColor,\n  customRippleColor,\n}: {\n  theme: InternalTheme;\n  variant: string;\n  disabled?: boolean;\n  customColor?: string;\n  customBackgroundColor?: ColorValue;\n  customRippleColor?: ColorValue;\n}) => {\n  const isVariant = (variantToCompare: Variant) => {\n    return variant === variantToCompare;\n  };\n\n  const baseFABColorProps = { theme, isVariant, disabled };\n\n  const backgroundColor = getBackgroundColor({\n    ...baseFABColorProps,\n    customBackgroundColor,\n  });\n\n  const foregroundColor = getForegroundColor({\n    ...baseFABColorProps,\n    customColor,\n    backgroundColor,\n  });\n\n  return {\n    backgroundColor,\n    foregroundColor,\n    rippleColor:\n      customRippleColor || color(foregroundColor).alpha(0.12).rgb().string(),\n  };\n};\n\nconst getLabelColor = ({ theme }: { theme: InternalTheme }) => {\n  if (theme.isV3) {\n    return theme.colors.onSurface;\n  }\n\n  if (theme.dark) {\n    return theme.colors.text;\n  }\n\n  return color(theme.colors.text).fade(0.54).rgb().string();\n};\n\nconst getBackdropColor = ({\n  theme,\n  customBackdropColor,\n}: {\n  theme: InternalTheme;\n  customBackdropColor?: string;\n}) => {\n  if (customBackdropColor) {\n    return customBackdropColor;\n  }\n  if (theme.isV3) {\n    return color(theme.colors.background).alpha(0.95).rgb().string();\n  }\n  return theme.colors?.backdrop;\n};\n\nconst getStackedFABBackgroundColor = ({ theme }: { theme: InternalTheme }) => {\n  if (theme.isV3) {\n    return theme.colors.elevation.level3;\n  }\n  return theme.colors.surface;\n};\n\nexport const getFABGroupColors = ({\n  theme,\n  customBackdropColor,\n}: {\n  theme: InternalTheme;\n  customBackdropColor?: string;\n}) => {\n  return {\n    labelColor: getLabelColor({ theme }),\n    backdropColor: getBackdropColor({ theme, customBackdropColor }),\n    stackedFABBackgroundColor: getStackedFABBackgroundColor({ theme }),\n  };\n};\n\nconst standardSize = {\n  height: 56,\n  width: 56,\n  borderRadius: 28,\n};\nconst smallSize = {\n  height: 40,\n  width: 40,\n  borderRadius: 28,\n};\nconst v3SmallSize = {\n  height: 40,\n  width: 40,\n};\nconst v3MediumSize = {\n  height: 56,\n  width: 56,\n};\nconst v3LargeSize = {\n  height: 96,\n  width: 96,\n};\n\nconst getCustomFabSize = (customSize: number, roundness: number) => ({\n  height: customSize,\n  width: customSize,\n  borderRadius: roundness === 0 ? 0 : customSize / roundness,\n});\n\nexport const getFabStyle = ({\n  size,\n  theme,\n  customSize,\n}: {\n  customSize?: number;\n  size: 'small' | 'medium' | 'large';\n  theme: InternalTheme;\n}) => {\n  const { isV3, roundness } = theme;\n\n  if (customSize) return getCustomFabSize(customSize, roundness);\n\n  if (isV3) {\n    switch (size) {\n      case 'small':\n        return { ...v3SmallSize, borderRadius: 3 * roundness };\n      case 'medium':\n        return { ...v3MediumSize, borderRadius: 4 * roundness };\n      case 'large':\n        return { ...v3LargeSize, borderRadius: 7 * roundness };\n    }\n  }\n\n  if (size === 'small') {\n    return smallSize;\n  }\n  return standardSize;\n};\n\nconst extended = {\n  height: 48,\n  paddingHorizontal: 16,\n};\n\nconst v3Extended = {\n  height: 56,\n  borderRadius: 16,\n  paddingHorizontal: 16,\n};\n\nconst getExtendedFabDimensions = (customSize: number) => ({\n  height: customSize,\n  paddingHorizontal: 16,\n});\n\nexport const getExtendedFabStyle = ({\n  customSize,\n  theme,\n}: {\n  customSize?: number;\n  theme: InternalTheme;\n}) => {\n  if (customSize) return getExtendedFabDimensions(customSize);\n\n  const { isV3 } = theme;\n\n  return isV3 ? v3Extended : extended;\n};\n\nlet cachedContext: CanvasRenderingContext2D | null = null;\n\nconst getCanvasContext = () => {\n  if (cachedContext) {\n    return cachedContext;\n  }\n\n  const canvas = document.createElement('canvas');\n  cachedContext = canvas.getContext('2d');\n\n  return cachedContext;\n};\n\nexport const getLabelSizeWeb = (ref: MutableRefObject<HTMLElement | null>) => {\n  if (Platform.OS !== 'web' || ref.current === null) {\n    return null;\n  }\n\n  const canvasContext = getCanvasContext();\n\n  if (!canvasContext) {\n    return null;\n  }\n\n  const elementStyles = window.getComputedStyle(ref.current);\n  canvasContext.font = elementStyles.font;\n\n  const metrics = canvasContext.measureText(ref.current.innerText);\n\n  return {\n    width: metrics.width,\n    height:\n      (metrics.fontBoundingBoxAscent ?? 0) +\n      (metrics.fontBoundingBoxDescent ?? 0),\n  };\n};\n"],"mappings":"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","ignoreList":[]},"metadata":{"hasCjsExports":false},"sourceType":"module","externalDependencies":[]}