{"version":3,"file":"get-box-mod.cjs","names":[],"sources":["../../../../src/core/Box/get-box-mod/get-box-mod.ts"],"sourcesContent":["function transformModKey(key: string) {\n  const cleanKey = key.startsWith('data-') ? key.slice(5) : key;\n  const kebabKey = cleanKey.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n  return `data-${kebabKey}`;\n}\n\nexport function getMod(props: Record<string, any>) {\n  return Object.keys(props).reduce<Record<string, any>>((acc, key) => {\n    const value = props[key];\n\n    if (value === undefined || value === '' || value === false || value === null) {\n      return acc;\n    }\n\n    acc[transformModKey(key)] = props[key];\n    return acc;\n  }, {});\n}\n\nexport function getBoxMod(mod?: any): Record<string, any> | null {\n  if (!mod) {\n    return null;\n  }\n\n  if (typeof mod === 'string') {\n    return { [transformModKey(mod)]: true };\n  }\n\n  if (Array.isArray(mod)) {\n    return [...mod].reduce<Record<`data-${string}`, any>>(\n      (acc, value) => ({ ...acc, ...getBoxMod(value) }),\n      {}\n    );\n  }\n\n  return getMod(mod);\n}\n"],"mappings":";;AAAA,SAAS,gBAAgB,KAAa;CAGpC,OAAO,SAFU,IAAI,WAAW,OAAO,IAAI,IAAI,MAAM,CAAC,IAAI,KAChC,QAAQ,mBAAmB,OAAO,EAAE,YACxC;AACxB;AAEA,SAAgB,OAAO,OAA4B;CACjD,OAAO,OAAO,KAAK,KAAK,EAAE,QAA6B,KAAK,QAAQ;EAClE,MAAM,QAAQ,MAAM;EAEpB,IAAI,UAAU,KAAA,KAAa,UAAU,MAAM,UAAU,SAAS,UAAU,MACtE,OAAO;EAGT,IAAI,gBAAgB,GAAG,KAAK,MAAM;EAClC,OAAO;CACT,GAAG,CAAC,CAAC;AACP;AAEA,SAAgB,UAAU,KAAuC;CAC/D,IAAI,CAAC,KACH,OAAO;CAGT,IAAI,OAAO,QAAQ,UACjB,OAAO,GAAG,gBAAgB,GAAG,IAAI,KAAK;CAGxC,IAAI,MAAM,QAAQ,GAAG,GACnB,OAAO,CAAC,GAAG,GAAG,EAAE,QACb,KAAK,WAAW;EAAE,GAAG;EAAK,GAAG,UAAU,KAAK;CAAE,IAC/C,CAAC,CACH;CAGF,OAAO,OAAO,GAAG;AACnB"}