{"version":3,"file":"assign-footer-variables.cjs","sources":["../../../../../src/components/AppShell/AppShellMediaStyles/assign-footer-variables/assign-footer-variables.ts"],"sourcesContent":["import { keys, rem } from '../../../../core';\nimport type { AppShellProps } from '../../AppShell';\nimport { getBaseSize } from '../get-base-size/get-base-size';\nimport type { CSSVariables, MediaQueryVariables } from '../get-variables/get-variables';\nimport { isPrimitiveSize } from '../is-primitive-size/is-primitive-size';\nimport { isResponsiveSize } from '../is-responsive-size/is-responsive-size';\n\ninterface AssignFooterVariablesInput {\n  baseStyles: CSSVariables;\n  minMediaStyles: MediaQueryVariables;\n  footer: AppShellProps['footer'] | undefined;\n}\n\nexport function assignFooterVariables({\n  baseStyles,\n  minMediaStyles,\n  footer,\n}: AssignFooterVariablesInput) {\n  const footerHeight = footer?.height;\n  const collapsedFooterTransform = 'translateY(var(--app-shell-footer-height))';\n  const shouldOffset = footer?.offset ?? true;\n\n  if (isPrimitiveSize(footerHeight)) {\n    const baseSize = rem(getBaseSize(footerHeight));\n    baseStyles['--app-shell-footer-height'] = baseSize;\n    if (shouldOffset) {\n      baseStyles['--app-shell-footer-offset'] = baseSize;\n    }\n  }\n\n  if (isResponsiveSize(footerHeight)) {\n    if (typeof footerHeight.base !== 'undefined') {\n      baseStyles['--app-shell-footer-height'] = rem(footerHeight.base);\n\n      if (shouldOffset) {\n        baseStyles['--app-shell-footer-offset'] = rem(footerHeight.base);\n      }\n    }\n\n    keys(footerHeight).forEach((key) => {\n      if (key !== 'base') {\n        minMediaStyles[key] = minMediaStyles[key] || {};\n        minMediaStyles[key]['--app-shell-footer-height'] = rem(footerHeight[key]);\n\n        if (shouldOffset) {\n          minMediaStyles[key]['--app-shell-footer-offset'] = rem(footerHeight[key]);\n        }\n      }\n    });\n  }\n\n  if (footer?.collapsed) {\n    baseStyles['--app-shell-footer-transform'] = collapsedFooterTransform;\n    baseStyles['--app-shell-footer-offset'] = '0px !important';\n  }\n}\n"],"names":["isPrimitiveSize","rem","getBaseSize","isResponsiveSize","keys"],"mappings":";;;;;;;;;;;;;;;AAaO,SAAS,qBAAsB,CAAA;AAAA,EACpC,UAAA;AAAA,EACA,cAAA;AAAA,EACA;AACF,CAA+B,EAAA;AAC7B,EAAA,MAAM,eAAe,MAAQ,EAAA,MAAA;AAC7B,EAAA,MAAM,wBAA2B,GAAA,4CAAA;AACjC,EAAM,MAAA,YAAA,GAAe,QAAQ,MAAU,IAAA,IAAA;AAEvC,EAAI,IAAAA,+BAAA,CAAgB,YAAY,CAAG,EAAA;AACjC,IAAA,MAAM,QAAW,GAAAC,OAAA,CAAIC,uBAAY,CAAA,YAAY,CAAC,CAAA;AAC9C,IAAA,UAAA,CAAW,2BAA2B,CAAI,GAAA,QAAA;AAC1C,IAAA,IAAI,YAAc,EAAA;AAChB,MAAA,UAAA,CAAW,2BAA2B,CAAI,GAAA,QAAA;AAAA;AAC5C;AAGF,EAAI,IAAAC,iCAAA,CAAiB,YAAY,CAAG,EAAA;AAClC,IAAI,IAAA,OAAO,YAAa,CAAA,IAAA,KAAS,WAAa,EAAA;AAC5C,MAAA,UAAA,CAAW,2BAA2B,CAAA,GAAIF,OAAI,CAAA,YAAA,CAAa,IAAI,CAAA;AAE/D,MAAA,IAAI,YAAc,EAAA;AAChB,QAAA,UAAA,CAAW,2BAA2B,CAAA,GAAIA,OAAI,CAAA,YAAA,CAAa,IAAI,CAAA;AAAA;AACjE;AAGF,IAAAG,SAAA,CAAK,YAAY,CAAA,CAAE,OAAQ,CAAA,CAAC,GAAQ,KAAA;AAClC,MAAA,IAAI,QAAQ,MAAQ,EAAA;AAClB,QAAA,cAAA,CAAe,GAAG,CAAA,GAAI,cAAe,CAAA,GAAG,KAAK,EAAC;AAC9C,QAAA,cAAA,CAAe,GAAG,CAAE,CAAA,2BAA2B,IAAIH,OAAI,CAAA,YAAA,CAAa,GAAG,CAAC,CAAA;AAExE,QAAA,IAAI,YAAc,EAAA;AAChB,UAAA,cAAA,CAAe,GAAG,CAAE,CAAA,2BAA2B,IAAIA,OAAI,CAAA,YAAA,CAAa,GAAG,CAAC,CAAA;AAAA;AAC1E;AACF,KACD,CAAA;AAAA;AAGH,EAAA,IAAI,QAAQ,SAAW,EAAA;AACrB,IAAA,UAAA,CAAW,8BAA8B,CAAI,GAAA,wBAAA;AAC7C,IAAA,UAAA,CAAW,2BAA2B,CAAI,GAAA,gBAAA;AAAA;AAE9C;;;;"}