{"version":3,"file":"style.mjs","names":[],"sources":["../../../src/base-ui/Text/style.ts"],"sourcesContent":["import { createStaticStyles, keyframes } from 'antd-style';\nimport { cva } from 'class-variance-authority';\n\nconst shine = keyframes`\n  0% {\n    background-position: 100%;\n  }\n\n  100% {\n    background-position: -100%;\n  }\n`;\n\nconst sweep = keyframes`\n  0% {\n    translate: -100% 0;\n  }\n\n  100% {\n    translate: 100% 0;\n  }\n`;\n\nexport const styles = createStaticStyles(({ css, cssVar }) => ({\n  code: css`\n    font-family: ${cssVar.fontFamilyCode};\n  `,\n  danger: css`\n    color: ${cssVar.colorError};\n  `,\n  delete: css`\n    text-decoration: line-through;\n  `,\n  disabled: css`\n    cursor: not-allowed;\n    color: ${cssVar.colorTextDisabled};\n  `,\n  ellipsis: css`\n    overflow: hidden;\n    text-overflow: ellipsis;\n    white-space: nowrap;\n  `,\n  ellipsisMulti: css`\n    overflow: hidden;\n    display: -webkit-box;\n    -webkit-box-orient: vertical;\n    text-overflow: ellipsis;\n  `,\n  h1: css`\n    font-size: calc(${cssVar.fontSize} * 2.5);\n    font-weight: bold;\n    line-height: 1.25;\n  `,\n\n  h2: css`\n    font-size: calc(${cssVar.fontSize} * 2);\n    font-weight: bold;\n    line-height: 1.25;\n  `,\n\n  h3: css`\n    font-size: calc(${cssVar.fontSize} * 1.5);\n    font-weight: bold;\n    line-height: 1.25;\n  `,\n\n  h4: css`\n    font-size: calc(${cssVar.fontSize} * 1.25);\n    font-weight: bold;\n    line-height: 1.25;\n  `,\n\n  h5: css`\n    font-size: ${cssVar.fontSize};\n    font-weight: bold;\n    line-height: 1.25;\n  `,\n  info: css`\n    color: ${cssVar.colorInfo};\n  `,\n\n  italic: css`\n    font-style: italic;\n  `,\n\n  mark: css`\n    color: #000;\n    background-color: ${cssVar.yellow};\n  `,\n\n  p: css`\n    margin-block: 0;\n  `,\n\n  secondary: css`\n    color: ${cssVar.colorTextDescription};\n  `,\n\n  shiny: css`\n    --shiny-duration: 1.5s;\n\n    user-select: none;\n\n    color: color-mix(in srgb, ${cssVar.colorText} 28%, transparent);\n\n    background: linear-gradient(120deg, transparent 25%, ${cssVar.colorText} 50%, transparent 75%);\n    background-clip: text;\n    background-size: 200% 100%;\n\n    animation: ${shine} var(--shiny-duration) linear infinite;\n\n    /* Animating background-position repaints every glyph each frame. Where\n     * mask-clip: text is supported, clip a transform-animated overlay to the\n     * glyphs instead so the sweep stays on the compositor. The mask clips every\n     * descendant too, so rows that also render icons or chips keep the\n     * background-clip path — masking would erase that non-text paint. */\n    @supports (-webkit-mask-clip: text) {\n      &:not(:has(*)) {\n        position: var(--shiny-origin, relative);\n\n        background: none;\n\n        animation: none;\n\n        /* stylelint-disable-next-line declaration-property-value-no-unknown */\n        mask-clip: text;\n        mask-image: linear-gradient(#fff, #fff);\n\n        &::after {\n          pointer-events: none;\n          will-change: transform;\n          content: '';\n\n          position: absolute;\n          inset: 0;\n\n          background: linear-gradient(\n            90deg,\n            transparent 25%,\n            ${cssVar.colorText} 50%,\n            transparent 75%\n          );\n\n          animation: ${sweep} var(--shiny-duration) linear infinite;\n        }\n      }\n    }\n\n    @media (prefers-reduced-motion: reduce) {\n      animation: none;\n\n      &::after {\n        display: none;\n      }\n    }\n  `,\n\n  strong: css`\n    font-weight: bold;\n  `,\n  success: css`\n    color: ${cssVar.colorSuccess};\n  `,\n  text: css`\n    color: ${cssVar.colorText};\n  `,\n  underline: css`\n    text-decoration: underline;\n  `,\n  warning: css`\n    color: ${cssVar.colorWarning};\n  `,\n}));\n\n/**\n * Coordinate layer for a row that shimmers several separate text spans. Each\n * span's sweep overlay resolves against the nearest positioned ancestor, so\n * dropping `position` on the spans and holding it here gives every span the\n * same row-wide overlay — one continuous wave instead of one sweep per span.\n */\nexport const groupStyles = createStaticStyles(({ css }) => ({\n  shinyGroup: css`\n    @supports (-webkit-mask-clip: text) {\n      & {\n        --shiny-origin: static;\n\n        position: relative;\n      }\n    }\n  `,\n}));\n\nexport const variants = cva(styles.text, {\n  defaultVariants: {},\n  variants: {\n    as: {\n      h1: styles.h1,\n      h2: styles.h2,\n      h3: styles.h3,\n      h4: styles.h4,\n      h5: styles.h5,\n      p: styles.p,\n    },\n    code: {\n      true: styles.code,\n    },\n    delete: {\n      true: styles.delete,\n    },\n    disabled: {\n      true: styles.disabled,\n    },\n    ellipsis: {\n      multi: styles.ellipsisMulti,\n      true: styles.ellipsis,\n    },\n    italic: {\n      true: styles.italic,\n    },\n    mark: {\n      true: styles.mark,\n    },\n    shiny: {\n      true: styles.shiny,\n    },\n    strong: {\n      true: styles.strong,\n    },\n    type: {\n      danger: styles.danger,\n      info: styles.info,\n      secondary: styles.secondary,\n      success: styles.success,\n      warning: styles.warning,\n    },\n    underline: {\n      true: styles.underline,\n    },\n  },\n});\n"],"mappings":";;;AAGA,MAAM,QAAQ,SAAS;;;;;;;;;AAUvB,MAAM,QAAQ,SAAS;;;;;;;;;AAUvB,MAAa,SAAS,oBAAoB,EAAE,KAAK,cAAc;CAC7D,MAAM,GAAG;mBACQ,OAAO,eAAe;;CAEvC,QAAQ,GAAG;aACA,OAAO,WAAW;;CAE7B,QAAQ,GAAG;;;CAGX,UAAU,GAAG;;aAEF,OAAO,kBAAkB;;CAEpC,UAAU,GAAG;;;;;CAKb,eAAe,GAAG;;;;;;CAMlB,IAAI,GAAG;sBACa,OAAO,SAAS;;;;CAKpC,IAAI,GAAG;sBACa,OAAO,SAAS;;;;CAKpC,IAAI,GAAG;sBACa,OAAO,SAAS;;;;CAKpC,IAAI,GAAG;sBACa,OAAO,SAAS;;;;CAKpC,IAAI,GAAG;iBACQ,OAAO,SAAS;;;;CAI/B,MAAM,GAAG;aACE,OAAO,UAAU;;CAG5B,QAAQ,GAAG;;;CAIX,MAAM,GAAG;;wBAEa,OAAO,OAAO;;CAGpC,GAAG,GAAG;;;CAIN,WAAW,GAAG;aACH,OAAO,qBAAqB;;CAGvC,OAAO,GAAG;;;;;gCAKoB,OAAO,UAAU;;2DAEU,OAAO,UAAU;;;;iBAI3D,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA8BT,OAAO,UAAU;;;;uBAIR,MAAM;;;;;;;;;;;;;CAc3B,QAAQ,GAAG;;;CAGX,SAAS,GAAG;aACD,OAAO,aAAa;;CAE/B,MAAM,GAAG;aACE,OAAO,UAAU;;CAE5B,WAAW,GAAG;;;CAGd,SAAS,GAAG;aACD,OAAO,aAAa;;AAEjC,EAAE;;;;;;;AAQF,MAAa,cAAc,oBAAoB,EAAE,WAAW,EAC1D,YAAY,GAAG;;;;;;;;IASjB,EAAE;AAEF,MAAa,WAAW,IAAI,OAAO,MAAM;CACvC,iBAAiB,CAAC;CAClB,UAAU;EACR,IAAI;GACF,IAAI,OAAO;GACX,IAAI,OAAO;GACX,IAAI,OAAO;GACX,IAAI,OAAO;GACX,IAAI,OAAO;GACX,GAAG,OAAO;EACZ;EACA,MAAM,EACJ,MAAM,OAAO,KACf;EACA,QAAQ,EACN,MAAM,OAAO,OACf;EACA,UAAU,EACR,MAAM,OAAO,SACf;EACA,UAAU;GACR,OAAO,OAAO;GACd,MAAM,OAAO;EACf;EACA,QAAQ,EACN,MAAM,OAAO,OACf;EACA,MAAM,EACJ,MAAM,OAAO,KACf;EACA,OAAO,EACL,MAAM,OAAO,MACf;EACA,QAAQ,EACN,MAAM,OAAO,OACf;EACA,MAAM;GACJ,QAAQ,OAAO;GACf,MAAM,OAAO;GACb,WAAW,OAAO;GAClB,SAAS,OAAO;GAChB,SAAS,OAAO;EAClB;EACA,WAAW,EACT,MAAM,OAAO,UACf;CACF;AACF,CAAC"}