{
  "version": 3,
  "sources": ["../../src/custom-gradient-picker/serializer.ts"],
  "sourcesContent": ["/**\n * External dependencies\n */\n\nexport function serializeGradientColor({\n  type,\n  value\n}) {\n  if (type === 'literal') {\n    return value;\n  }\n  if (type === 'hex') {\n    return `#${value}`;\n  }\n  if (type === 'var') {\n    return `var(${value})`;\n  }\n  if (type === 'hsl') {\n    const [hue, saturation, lightness] = value;\n    return `hsl(${hue},${saturation}%,${lightness}%)`;\n  }\n  if (type === 'hsla') {\n    const [hue, saturation, lightness, alpha] = value;\n    return `hsla(${hue},${saturation}%,${lightness}%,${alpha})`;\n  }\n  return `${type}(${value.join(',')})`;\n}\nexport function serializeGradientPosition(position) {\n  if (!position) {\n    return '';\n  }\n  const {\n    value,\n    type\n  } = position;\n  if (type === 'calc') {\n    return `calc(${value})`;\n  }\n  return `${value}${type}`;\n}\nexport function serializeGradientColorStop({\n  type,\n  value,\n  length\n}) {\n  return `${serializeGradientColor({\n    type,\n    value\n  })} ${serializeGradientPosition(length)}`;\n}\nexport function serializeGradientOrientation(orientation) {\n  if (Array.isArray(orientation) || !orientation || orientation.type !== 'angular') {\n    return;\n  }\n  return `${orientation.value}deg`;\n}\nexport function serializeGradient({\n  type,\n  orientation,\n  colorStops\n}) {\n  const serializedOrientation = serializeGradientOrientation(orientation);\n  const serializedColorStops = colorStops.sort((colorStop1, colorStop2) => {\n    const getNumericStopValue = colorStop => {\n      return colorStop?.length?.value === undefined ? 0 : parseInt(colorStop.length.value);\n    };\n    return getNumericStopValue(colorStop1) - getNumericStopValue(colorStop2);\n  }).map(serializeGradientColorStop);\n  return `${type}(${[serializedOrientation, ...serializedColorStops].filter(Boolean).join(',')})`;\n}"],
  "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAIO,SAAS,uBAAuB;AAAA,EACrC;AAAA,EACA;AACF,GAAG;AACD,MAAI,SAAS,WAAW;AACtB,WAAO;AAAA,EACT;AACA,MAAI,SAAS,OAAO;AAClB,WAAO,IAAI,KAAK;AAAA,EAClB;AACA,MAAI,SAAS,OAAO;AAClB,WAAO,OAAO,KAAK;AAAA,EACrB;AACA,MAAI,SAAS,OAAO;AAClB,UAAM,CAAC,KAAK,YAAY,SAAS,IAAI;AACrC,WAAO,OAAO,GAAG,IAAI,UAAU,KAAK,SAAS;AAAA,EAC/C;AACA,MAAI,SAAS,QAAQ;AACnB,UAAM,CAAC,KAAK,YAAY,WAAW,KAAK,IAAI;AAC5C,WAAO,QAAQ,GAAG,IAAI,UAAU,KAAK,SAAS,KAAK,KAAK;AAAA,EAC1D;AACA,SAAO,GAAG,IAAI,IAAI,MAAM,KAAK,GAAG,CAAC;AACnC;AACO,SAAS,0BAA0B,UAAU;AAClD,MAAI,CAAC,UAAU;AACb,WAAO;AAAA,EACT;AACA,QAAM;AAAA,IACJ;AAAA,IACA;AAAA,EACF,IAAI;AACJ,MAAI,SAAS,QAAQ;AACnB,WAAO,QAAQ,KAAK;AAAA,EACtB;AACA,SAAO,GAAG,KAAK,GAAG,IAAI;AACxB;AACO,SAAS,2BAA2B;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AACF,GAAG;AACD,SAAO,GAAG,uBAAuB;AAAA,IAC/B;AAAA,IACA;AAAA,EACF,CAAC,CAAC,IAAI,0BAA0B,MAAM,CAAC;AACzC;AACO,SAAS,6BAA6B,aAAa;AACxD,MAAI,MAAM,QAAQ,WAAW,KAAK,CAAC,eAAe,YAAY,SAAS,WAAW;AAChF;AAAA,EACF;AACA,SAAO,GAAG,YAAY,KAAK;AAC7B;AACO,SAAS,kBAAkB;AAAA,EAChC;AAAA,EACA;AAAA,EACA;AACF,GAAG;AACD,QAAM,wBAAwB,6BAA6B,WAAW;AACtE,QAAM,uBAAuB,WAAW,KAAK,CAAC,YAAY,eAAe;AACvE,UAAM,sBAAsB,eAAa;AACvC,aAAO,WAAW,QAAQ,UAAU,SAAY,IAAI,SAAS,UAAU,OAAO,KAAK;AAAA,IACrF;AACA,WAAO,oBAAoB,UAAU,IAAI,oBAAoB,UAAU;AAAA,EACzE,CAAC,EAAE,IAAI,0BAA0B;AACjC,SAAO,GAAG,IAAI,IAAI,CAAC,uBAAuB,GAAG,oBAAoB,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG,CAAC;AAC9F;",
  "names": []
}
