var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
  for (var name in all)
    __defProp(target, name, { get: all[name], enumerable: !0 });
}, __copyProps = (to, from, except, desc) => {
  if (from && typeof from == "object" || typeof from == "function")
    for (let key of __getOwnPropNames(from))
      !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
  return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
var Badge_exports = {};
__export(Badge_exports, {
  Badge: () => Badge
});
module.exports = __toCommonJS(Badge_exports);
var import_tamagui = require("tamagui"), import_typography = require("./typography"), BadgeContext = (0, import_tamagui.createStyledContext)({
  visible: !1,
  variant: "small",
  density: "0"
}), Frame = (0, import_tamagui.styled)(import_tamagui.View, {
  name: "Badge",
  context: BadgeContext,
  position: "relative",
  variants: {
    visible: {
      false: {},
      true: {}
    },
    variant: {
      small: {},
      large: {}
    },
    density: {
      0: {},
      "-1": {}
    }
  },
  defaultVariants: {
    variant: "small",
    visible: !1,
    density: "0"
  }
}), Indicator = (0, import_tamagui.styled)(import_tamagui.ThemeableStack, {
  name: "BadgeIndicator",
  context: BadgeContext,
  backgroundColor: "$error",
  borderRadius: "$shape.corner_full",
  position: "absolute",
  justifyContent: "center",
  alignItems: "center",
  alignContent: "center",
  flexDirection: "row",
  // half of icon button + width of badge
  // this may need to be dynamic based on the size of wrapped element
  left: 26,
  variants: {
    visible: {
      false: {
        display: "none"
      }
    },
    variant: {
      small: {
        width: 6,
        height: 6
      },
      large: {
        width: 20,
        height: 20
      }
    },
    density: {
      0: {
        top: -4
      },
      "-1": {
        top: -2
      }
    }
  }
}), IndicatorLabel = (0, import_tamagui.styled)(import_typography.Body, {
  name: "BadeIndicatorText",
  context: BadgeContext,
  col: "$onError",
  textAlign: "center"
}), Badge = (0, import_tamagui.withStaticProperties)(Frame, {
  Props: BadgeContext.Provider,
  Indicator,
  Label: IndicatorLabel
});
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
  Badge
});
//# sourceMappingURL=Badge.js.map
