{
  "version": 3,
  "sources": ["ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/CalendarTags/CalendarTags.hooks.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/CalendarTags/CalendarTags.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/Brand/Brand.hooks.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/Brand/BrandHeadline/BrandHeadline.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/Brand/Brand.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/BrandProfiles/BrandProfiles.hooks.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/BrandProfiles/BrandProfiles.utils.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/BrandProfiles/BrandProfiles.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/provider/CouponScheduleProvider/CouponScheduleProvider.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/provider/CouponScheduleProvider/CouponScheduleProvider.hooks.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/BrandProfilesHeadline/BrandProfilesHeadline.js", "ssg:https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/CouponCollection.js", "ssg:https://framerusercontent.com/modules/brTkyl87HWdHAAJh0eg0/TxXjFRI3GC9iw6loXoq5/CouponCollection.js"],
  "sourcesContent": ["import { useFetchBrandSaleGroup } from \"../../../../../hooks/fetchers/useFetchBrandSaleGroup.js\";\nimport \"../../IntersectionProvider/IntersectionProvider.js\";\nimport { useIntersectionContext } from \"../../IntersectionProvider/IntersectionProvider.hooks.js\";\nconst useBrandSaleGroup = (brandSaleGroupId) => {\n  const {\n    isInView\n  } = useIntersectionContext();\n  const {\n    isLoading,\n    error,\n    data\n  } = useFetchBrandSaleGroup(brandSaleGroupId, isInView);\n  const hasError = error !== void 0;\n  const isPending = isLoading || hasError;\n  const brandSaleList = (data == null ? void 0 : data.data.brandSaleList) ?? [];\n  const title = data == null ? void 0 : data.data.title;\n  return {\n    title,\n    brandSaleList,\n    isPending\n  };\n};\nexport {\n  useBrandSaleGroup\n};\n", "import { jsxs, jsx } from \"react/jsx-runtime\";\nimport { memo, useMemo } from \"react\";\nimport { useComponentId, useTrackEvent } from \"../../EventTrackingProvider/EventTrackingProvider.hooks.js\";\nimport \"../../EventTrackingProvider/EventTrackingProvider.js\";\nimport { getCurrentBrandSaleIndex, getCalendarTagName } from \"./CalendarTags.utils.js\";\nimport { useBrandSaleGroup } from \"./CalendarTags.hooks.js\";\nimport { Tags } from \"../../Tags/index.js\";\nimport { Tag } from \"../../../../@shared/Tag/Tag.js\";\nimport { useTheme } from \"../../../../../hooks/useTheme.js\";\nimport \"framer-motion\";\nimport \"react-dom\";\nimport { Icon } from \"../../../../@shared/Icon/Icon.js\";\nimport \"../../../../../node_modules/@firebase/analytics/dist/esm/index.esm2017.js\";\nimport \"../../../../../node_modules/firebase/app/dist/esm/index.esm.js\";\nimport \"../../../../../node_modules/swr/core/dist/index.js\";\nimport \"../../../../../config/index.js\";\nimport \"../../../../../node_modules/vite-plugin-node-polyfills/shims/buffer/dist/index.js\";\nimport \"../../../../../node_modules/js-cookie/dist/js.cookie.js\";\nimport \"framer\";\nimport \"../../../../../node_modules/@29cm/snowplow/dist/esm/core/snowplow.js\";\nimport \"../../../../../node_modules/swr/mutation/dist/index.js\";\nimport \"../../../../../hooks/stores/content/content.store.js\";\nimport \"../../../../../hooks/stores/dialog/dialog.store.js\";\nimport \"../../../../../hooks/stores/global-layout/global-layout.store.js\";\nimport \"../../../../../hooks/stores/toast/toast.store.js\";\nimport { useBreakpoint } from \"../../../../../hooks/useBreakpoint.js\";\nimport \"../../../../../hooks/stores/bottom-sheet/bottom-sheet.store.js\";\nimport \"../../../Dialog/Dialog.module.css.js\";\nimport \"../../../../../containers/DialogContainer/DialogContainer.emitter.js\";\nimport \"../../../../../utils/redirectLogin.js\";\nimport \"../../../../../utils/event-properties/source.js\";\nimport { useTrackSnowplowEvent } from \"../../../../../hooks/snowplow/useTrackSnowplowEvent.js\";\nimport { EventTrigger } from \"../../../../@shared/EventTrigger/index.js\";\nconst DEFAULT_INDEX = 0;\nconst SCHEDULE_BUTTON_NAME = \"\uC2A4\uCF00\uC904\";\nconst CalendarTags = memo(({\n  children,\n  brandSaleGroupId,\n  scheduleTag\n}) => {\n  const componentId = useComponentId();\n  const {\n    trackEvent,\n    trackClickTagSnowplowEvent\n  } = useTrackEvent();\n  const trackSnowplowEvent = useTrackSnowplowEvent();\n  const theme = useTheme();\n  const breakpoint = useBreakpoint();\n  const {\n    brandSaleList,\n    isPending\n  } = useBrandSaleGroup(brandSaleGroupId);\n  const currentIndex = useMemo(() => getCurrentBrandSaleIndex(brandSaleList) ?? 0, [brandSaleList]);\n  const handleClickSchedule = () => {\n    trackSnowplowEvent(\"click_button\", {\n      section_name: componentId,\n      section_title: componentId,\n      position: -1,\n      button_id: \"brand_schedule\",\n      button_name: SCHEDULE_BUTTON_NAME,\n      layout_position: -1\n    });\n  };\n  const handleClick = (item, index) => () => {\n    if (!item) {\n      return;\n    }\n    trackEvent({\n      component_type: \"tag\",\n      tag_type: \"time\",\n      tag_name: item.title,\n      position: index + 1\n    });\n    trackClickTagSnowplowEvent({\n      tag_type: \"time\",\n      tag_value: item.title\n    });\n  };\n  return /* @__PURE__ */ jsxs(Tags.Root, { defaultValue: DEFAULT_INDEX, value: currentIndex, loading: isPending, dragPaddingLeft: scheduleTag.visible ? 8 : void 0, children: [\n    /* @__PURE__ */ jsxs(\"div\", { style: containerStyle, children: [\n      scheduleTag.visible ? /* @__PURE__ */ jsx(\"div\", { style: {\n        ...wrapperStyleByBreakpoint[breakpoint],\n        ...wrapperStyleByTheme[theme],\n        ...wrapperStyle\n      }, children: /* @__PURE__ */ jsx(EventTrigger.Target, { onClick: handleClickSchedule, children: /* @__PURE__ */ jsx(\"a\", { style: anchorStyle, href: scheduleTag.href, target: \"_blank\", rel: \"noreferrer\", children: /* @__PURE__ */ jsxs(Tag, { style: {\n        ...tagStyle,\n        color: scheduleTag.color,\n        borderColor: scheduleTag.color\n      }, children: [\n        SCHEDULE_BUTTON_NAME,\n        \" \",\n        /* @__PURE__ */ jsx(Icon, { type: \"searchList\", color: scheduleTag.color, fill: true, weight: \"bold\", size: 14 })\n      ] }) }) }) }) : null,\n      /* @__PURE__ */ jsx(Tags.List, { list: brandSaleList, children: ({\n        index,\n        item\n      }) => /* @__PURE__ */ jsx(Tags.Item, { value: index, onClick: handleClick(item, index), children: item ? getCalendarTagName({\n        displayStartAt: item.displayStartAt,\n        displayEndAt: item.displayEndAt\n      }) : \"\" }) })\n    ] }),\n    /* @__PURE__ */ jsx(Tags.Panels, { list: brandSaleList, children: ({\n      item,\n      index,\n      pending\n    }) => {\n      return /* @__PURE__ */ jsx(Tags.Panel, { value: index, children: children({\n        brandSaleId: item == null ? void 0 : item.brandSaleId,\n        startDate: item ? new Date(item.displayStartAt) : void 0,\n        endDate: item ? new Date(item.displayEndAt) : void 0,\n        index,\n        pending\n      }) }, item == null ? void 0 : item.brandSaleId);\n    } })\n  ] });\n});\nconst containerStyle = {\n  width: \"100%\",\n  display: \"flex\",\n  alignItems: \"center\"\n};\nconst wrapperStyle = {\n  paddingRight: 8,\n  marginBottom: 16,\n  boxSizing: \"border-box\"\n};\nconst wrapperStyleByTheme = {\n  light: {\n    borderRight: \"1px solid #5d5d5d14\"\n  },\n  dark: {\n    borderRight: \"1px solid #f4f4f414\"\n  }\n};\nconst wrapperStyleByBreakpoint = {\n  desktop: {\n    paddingLeft: 0\n  },\n  tablet: {\n    paddingLeft: 20\n  },\n  mobile: {\n    paddingLeft: 20\n  }\n};\nconst anchorStyle = {\n  textDecoration: \"none\"\n};\nconst tagStyle = {\n  display: \"flex\",\n  alignItems: \"center\",\n  gap: 4,\n  paddingRight: 10,\n  backgroundColor: \"transparent\",\n  borderWidth: 1,\n  borderStyle: \"solid\"\n};\nexport {\n  CalendarTags\n};\n", "import { useFetchCouponCollectionProducts } from \"../../../../../hooks/fetchers/useFetchCouponCollectionProducts.js\";\nconst useCouponCollectionProducts = (couponCollectionId) => {\n  const hasCouponCollectionId = couponCollectionId !== void 0;\n  const enabled = hasCouponCollectionId;\n  const {\n    products,\n    isPending,\n    hasNext,\n    setSize\n  } = useFetchCouponCollectionProducts(couponCollectionId ?? 0, enabled);\n  return {\n    isPending,\n    products,\n    setSize,\n    hasNext\n  };\n};\nexport {\n  useCouponCollectionProducts\n};\n", "import { jsx, jsxs } from \"react/jsx-runtime\";\nimport { EventTrigger } from \"../../../../../@shared/EventTrigger/index.js\";\nimport { Skeleton } from \"../../../../../@shared/Skeleton/Skeleton.js\";\nimport { TextButton as Default } from \"../../../../../@shared/TextButton/TextButton.js\";\nimport { useComponentId } from \"../../../EventTrackingProvider/EventTrackingProvider.hooks.js\";\nimport \"../../../EventTrackingProvider/EventTrackingProvider.js\";\nimport { Headline } from \"../../../Headline/index.js\";\nimport { env } from \"../../../../../../config/index.js\";\nimport \"react\";\nimport \"../../../../../../node_modules/@firebase/analytics/dist/esm/index.esm2017.js\";\nimport \"../../../../../../node_modules/firebase/app/dist/esm/index.esm.js\";\nimport \"../../../../../../node_modules/swr/core/dist/index.js\";\nimport \"../../../../../../node_modules/vite-plugin-node-polyfills/shims/buffer/dist/index.js\";\nimport \"../../../../../../node_modules/js-cookie/dist/js.cookie.js\";\nimport \"framer\";\nimport \"../../../../../../node_modules/@29cm/snowplow/dist/esm/core/snowplow.js\";\nimport \"../../../../../../node_modules/swr/mutation/dist/index.js\";\nimport \"../../../../../../hooks/stores/content/content.store.js\";\nimport \"../../../../../../hooks/stores/dialog/dialog.store.js\";\nimport \"../../../../../../hooks/stores/global-layout/global-layout.store.js\";\nimport \"../../../../../../hooks/stores/toast/toast.store.js\";\nimport { useTheme } from \"../../../../../../hooks/useTheme.js\";\nimport \"../../../../../@shared/providers/BreakpointProvider/BreakpointProvider.js\";\nimport \"../../../../../../hooks/stores/bottom-sheet/bottom-sheet.store.js\";\nimport \"react-dom\";\nimport \"../../../../Dialog/Dialog.module.css.js\";\nimport \"framer-motion\";\nimport \"../../../../../../containers/DialogContainer/DialogContainer.emitter.js\";\nimport \"../../../../../../utils/redirectLogin.js\";\nimport \"../../../../../../utils/event-properties/source.js\";\nimport { useTrackSnowplowEvent } from \"../../../../../../hooks/snowplow/useTrackSnowplowEvent.js\";\nimport { useNavigatePage } from \"../../../../../../hooks/useNavigatePage.js\";\nconst DEFAULT_COMPONENT_ID = \"CouponCollection\";\nconst ACTION_BUTTON_NAME = \"\uC0C1\uD488 \uC804\uCCB4\uBCF4\uAE30\";\nconst BrandHeadline = ({\n  couponCollectionId,\n  isPending,\n  frontBrand\n}) => {\n  const theme = useTheme();\n  const componentId = useComponentId();\n  const couponCollectionSearchParams = new URLSearchParams({\n    source: componentId || DEFAULT_COMPONENT_ID\n  }).toString();\n  const couponCollectionPageUrl = `${env.workspace.content}/coupon-collection/${couponCollectionId}?${couponCollectionSearchParams}`;\n  const navigateCouponCollectionPage = useNavigatePage(couponCollectionPageUrl);\n  const trackSnowplowEvent = useTrackSnowplowEvent();\n  const handleButtonClick = () => {\n    if (!couponCollectionId) {\n      return;\n    }\n    navigateCouponCollectionPage();\n    trackSnowplowEvent(\"click_button\", {\n      section_name: componentId,\n      section_title: componentId,\n      position: -1,\n      button_id: \"more\",\n      button_name: ACTION_BUTTON_NAME,\n      layout_position: -1\n    });\n  };\n  return /* @__PURE__ */ jsx(Headline.Root, { priority: \"tertiary\", children: /* @__PURE__ */ jsxs(Headline.Content, { children: [\n    !isPending ? /* @__PURE__ */ jsxs(Headline.Title, { children: [\n      (frontBrand == null ? void 0 : frontBrand.nameKor) ?? \"\",\n      \" \uC778\uAE30 \uC544\uC774\uD15C\"\n    ] }) : /* @__PURE__ */ jsx(\"div\", { style: {\n      width: \"100%\"\n    }, children: /* @__PURE__ */ jsx(Skeleton, { style: {\n      height: 19.6,\n      width: 160,\n      borderRadius: 2,\n      ...skeletonStyleByTheme[theme]\n    } }) }),\n    /* @__PURE__ */ jsx(Headline.Action, { children: /* @__PURE__ */ jsx(EventTrigger.Target, { onClick: handleButtonClick, children: /* @__PURE__ */ jsx(Default, { style: {\n      opacity: 0.6\n    }, theme, variant: \"primary\", size: \"xSmall\", postfixIcon: \"chevronRight\", children: ACTION_BUTTON_NAME }) }) })\n  ] }) });\n};\nconst skeletonStyleByTheme = {\n  light: {\n    backgroundColor: \"#dee2e6\"\n  },\n  dark: {\n    backgroundColor: \"#27272a\"\n  }\n};\nexport {\n  BrandHeadline\n};\n", "import { jsxs, Fragment, jsx } from \"react/jsx-runtime\";\nimport { useComponentId } from \"../../EventTrackingProvider/EventTrackingProvider.hooks.js\";\nimport \"../../EventTrackingProvider/EventTrackingProvider.js\";\nimport { useCouponCollectionProducts } from \"./Brand.hooks.js\";\nimport { Products } from \"../../Products/index.js\";\nimport { CARD_HORIZONTAL_AUTO } from \"../../Products/Root.constants.js\";\nimport { BrandHeadline } from \"./BrandHeadline/BrandHeadline.js\";\nimport { EventTrigger } from \"../../../../@shared/EventTrigger/index.js\";\nconst Brand = ({\n  couponCollectionId,\n  frontBrand\n}) => {\n  const componentId = useComponentId();\n  const {\n    isPending,\n    products,\n    hasNext,\n    setSize\n  } = useCouponCollectionProducts(couponCollectionId);\n  const loading = isPending || products.length === 0;\n  return /* @__PURE__ */ jsxs(Fragment, { children: [\n    /* @__PURE__ */ jsx(BrandHeadline, { isPending: !frontBrand, frontBrand, couponCollectionId }),\n    /* @__PURE__ */ jsx(Products.Root, { hasNext, options: CARD_HORIZONTAL_AUTO, products, loading, onLastItemView: () => {\n      setSize((prev) => prev + 1);\n    }, children: ({\n      index\n    }) => /* @__PURE__ */ jsx(EventTrigger.Target, { children: /* @__PURE__ */ jsx(Products.Card, { index, componentName: componentId }) }) })\n  ] });\n};\nexport {\n  Brand\n};\n", "import { useFetchBrandSales } from \"../../../../../hooks/fetchers/useFetchBrandSales.js\";\nconst useBrandSales = (brandSaleId) => {\n  var _a;\n  const hasBrandSaleId = brandSaleId !== void 0;\n  const enabled = hasBrandSaleId;\n  const {\n    isLoading,\n    error,\n    data\n  } = useFetchBrandSales(brandSaleId ?? 0, enabled);\n  const brandSaleCouponList = ((_a = data == null ? void 0 : data.data) == null ? void 0 : _a.brandSaleCouponList) ?? [];\n  const hasError = error !== void 0;\n  const isPending = isLoading || hasError || !enabled;\n  return {\n    isPending,\n    brandSaleCouponList\n  };\n};\nexport {\n  useBrandSales\n};\n", "const formatCoupon = (coupon) => {\n  if (!coupon) {\n    return void 0;\n  }\n  return {\n    ...coupon,\n    id: coupon.couponId\n  };\n};\nexport {\n  formatCoupon\n};\n", "import { jsxs, jsx } from \"react/jsx-runtime\";\nimport { useBrandSales } from \"./BrandProfiles.hooks.js\";\nimport { useTrackEvent } from \"../../EventTrackingProvider/EventTrackingProvider.hooks.js\";\nimport \"../../EventTrackingProvider/EventTrackingProvider.js\";\nimport { Profiles } from \"../../Profiles/index.js\";\nimport \"react\";\nimport \"../../../../../node_modules/@firebase/analytics/dist/esm/index.esm2017.js\";\nimport \"../../../../../node_modules/firebase/app/dist/esm/index.esm.js\";\nimport \"../../../../../node_modules/swr/core/dist/index.js\";\nimport \"../../../../../config/index.js\";\nimport \"../../../../../node_modules/vite-plugin-node-polyfills/shims/buffer/dist/index.js\";\nimport \"../../../../../node_modules/js-cookie/dist/js.cookie.js\";\nimport \"framer\";\nimport \"../../../../../node_modules/@29cm/snowplow/dist/esm/core/snowplow.js\";\nimport \"../../../../../node_modules/swr/mutation/dist/index.js\";\nimport \"../../../../../hooks/stores/content/content.store.js\";\nimport \"../../../../../hooks/stores/dialog/dialog.store.js\";\nimport \"../../../../../hooks/stores/global-layout/global-layout.store.js\";\nimport \"../../../../../hooks/stores/toast/toast.store.js\";\nimport \"../../../../@shared/providers/ThemeProvider/ThemeProvider.js\";\nimport { useBreakpoint } from \"../../../../../hooks/useBreakpoint.js\";\nimport \"../../../../../hooks/stores/bottom-sheet/bottom-sheet.store.js\";\nimport \"react-dom\";\nimport \"../../../Dialog/Dialog.module.css.js\";\nimport \"framer-motion\";\nimport \"../../../../../containers/DialogContainer/DialogContainer.emitter.js\";\nimport \"../../../../../utils/redirectLogin.js\";\nimport \"../../../../../utils/event-properties/source.js\";\nimport { DownloadableCoupon } from \"../../DownloadableCoupon/DownloadableCoupon.js\";\nimport { formatCoupon } from \"./BrandProfiles.utils.js\";\nconst COUPON_MAX_WIDTH = 429;\nconst GAP = 16;\nconst BrandProfiles = ({\n  children,\n  brandSaleId,\n  couponColor\n}) => {\n  const breakpoint = useBreakpoint();\n  const {\n    trackEvent,\n    trackClickTagSnowplowEvent\n  } = useTrackEvent();\n  const {\n    isPending,\n    brandSaleCouponList\n  } = useBrandSales(brandSaleId);\n  const handleClick = (brand, index) => () => {\n    if (!brand) {\n      return;\n    }\n    trackEvent({\n      component_type: \"tag\",\n      tag_type: \"brand\",\n      tag_name: brand.nameKor,\n      tag_value: brand.frontBrandId,\n      position: index + 1\n    });\n    trackClickTagSnowplowEvent({\n      tag_type: \"brand\",\n      tag_value: brand.nameKor\n    });\n  };\n  return /* @__PURE__ */ jsxs(Profiles.Root, { loading: isPending, value: 0, children: [\n    /* @__PURE__ */ jsxs(\"div\", { style: {\n      ...profilesLayoutBaseStyle,\n      ...profilesLayoutStyleByBreakpoint[breakpoint]\n    }, children: [\n      /* @__PURE__ */ jsx(\"div\", { style: profilesListStyleByBreakpoint[breakpoint], children: /* @__PURE__ */ jsx(Profiles.List, { list: brandSaleCouponList, children: ({\n        item,\n        index\n      }) => /* @__PURE__ */ jsx(Profiles.Item, { value: index, name: (item == null ? void 0 : item.frontBrand.nameKor) ?? \"\", imageSrc: (item == null ? void 0 : item.frontBrand.iconImageUrl) ?? \"\", onClick: handleClick(item == null ? void 0 : item.frontBrand, index) }) }) }),\n      /* @__PURE__ */ jsx(\"div\", { style: {\n        ...brandCouponBaseStyle,\n        ...brandCouponStyleByBreakpoint[breakpoint]\n      }, children: /* @__PURE__ */ jsx(Profiles.Panels, { list: brandSaleCouponList, children: ({\n        item,\n        index\n      }) => /* @__PURE__ */ jsx(Profiles.Panel, { value: index, children: /* @__PURE__ */ jsx(DownloadableCoupon, { coupon: formatCoupon(item == null ? void 0 : item.coupon), backgroundColor: couponColor }) }) }) })\n    ] }),\n    /* @__PURE__ */ jsx(Profiles.Panels, { list: brandSaleCouponList, children: ({\n      item,\n      index\n    }) => /* @__PURE__ */ jsx(Profiles.Panel, { value: index, children: children(item == null ? void 0 : item.couponCollectionId, item == null ? void 0 : item.frontBrand) }) })\n  ] });\n};\nconst profilesLayoutBaseStyle = {\n  display: \"flex\",\n  width: \"100%\"\n};\nconst profilesLayoutStyleByBreakpoint = {\n  desktop: {\n    flexDirection: \"row\",\n    gap: GAP\n  },\n  tablet: {\n    flexDirection: \"row\",\n    gap: GAP\n  },\n  mobile: {\n    flexDirection: \"column\"\n  }\n};\nconst profilesListStyleByBreakpoint = {\n  desktop: {\n    width: `calc(100% - ${COUPON_MAX_WIDTH}px - ${GAP}px)`\n  },\n  tablet: {\n    width: `calc(100% - ${COUPON_MAX_WIDTH}px - ${GAP}px)`\n  },\n  mobile: {\n    width: \"100%\"\n  }\n};\nconst brandCouponBaseStyle = {\n  width: \"100%\"\n};\nconst brandCouponStyleByBreakpoint = {\n  desktop: {\n    maxWidth: COUPON_MAX_WIDTH,\n    padding: 0\n  },\n  tablet: {\n    maxWidth: COUPON_MAX_WIDTH,\n    padding: \"0px 20px 0px 0px\"\n  },\n  mobile: {\n    padding: \"0px 20px 16px\"\n  }\n};\nexport {\n  BrandProfiles\n};\n", "import { jsx } from \"react/jsx-runtime\";\nimport { createContext, useMemo } from \"react\";\nimport { isBefore } from \"../../../../../../node_modules/date-fns/isBefore.js\";\nconst CouponScheduleContext = createContext(null);\nconst CouponScheduleProvider = ({\n  children,\n  startDate,\n  endDate\n}) => {\n  const hasDate = startDate !== void 0 && endDate !== void 0;\n  const isBefore$1 = useMemo(() => hasDate && isBefore(/* @__PURE__ */ new Date(), startDate), [hasDate, startDate]);\n  const isAfter = useMemo(() => hasDate && isBefore(endDate, /* @__PURE__ */ new Date()), [hasDate, endDate]);\n  const isActive = useMemo(() => hasDate && isBefore(startDate, /* @__PURE__ */ new Date()) && isBefore(/* @__PURE__ */ new Date(), endDate), [hasDate, startDate, endDate]);\n  return /* @__PURE__ */ jsx(CouponScheduleContext.Provider, { value: {\n    startDate,\n    endDate,\n    isBefore: isBefore$1,\n    isAfter,\n    isActive\n  }, children });\n};\nexport {\n  CouponScheduleContext,\n  CouponScheduleProvider\n};\n", "import { useContext } from \"react\";\nimport { CouponScheduleContext } from \"./CouponScheduleProvider.js\";\nconst useCouponScheduleContext = () => {\n  const context = useContext(CouponScheduleContext);\n  if (!context) {\n    throw new Error(\"useCouponScheduleContext should be used within CouponCollection\");\n  }\n  return context;\n};\nexport {\n  useCouponScheduleContext\n};\n", "import { jsxs, Fragment, jsx } from \"react/jsx-runtime\";\nimport { Headline } from \"../../Headline/index.js\";\nimport { ko } from \"../../../../../node_modules/date-fns/locale/ko.js\";\nimport { useCouponScheduleContext } from \"../provider/CouponScheduleProvider/CouponScheduleProvider.hooks.js\";\nimport { typography } from \"../../../../../styles/typography.js\";\nimport { Countdown } from \"../../../Countdown/Countdown.js\";\nimport { SubscriptionButton } from \"../../SubscriptionButton/SubscriptionButton.js\";\nimport { splitToStringArray } from \"../../../../../utils/splitToStringArray.js\";\nimport { restOf } from \"../../../../../utils/restOf.js\";\nimport \"react\";\nimport \"../../../../../node_modules/@firebase/analytics/dist/esm/index.esm2017.js\";\nimport \"../../../../../node_modules/firebase/app/dist/esm/index.esm.js\";\nimport \"../../../../../node_modules/swr/core/dist/index.js\";\nimport \"../../../../../config/index.js\";\nimport \"../../../../../node_modules/vite-plugin-node-polyfills/shims/buffer/dist/index.js\";\nimport \"../../../../../node_modules/js-cookie/dist/js.cookie.js\";\nimport \"framer\";\nimport \"../../../../../node_modules/@29cm/snowplow/dist/esm/core/snowplow.js\";\nimport \"../../../../../node_modules/swr/mutation/dist/index.js\";\nimport \"../../../../../hooks/stores/content/content.store.js\";\nimport \"../../../../../hooks/stores/dialog/dialog.store.js\";\nimport \"../../../../../hooks/stores/global-layout/global-layout.store.js\";\nimport \"../../../../../hooks/stores/toast/toast.store.js\";\nimport { useTheme } from \"../../../../../hooks/useTheme.js\";\nimport { useBreakpoint } from \"../../../../../hooks/useBreakpoint.js\";\nimport \"../../../../../hooks/stores/bottom-sheet/bottom-sheet.store.js\";\nimport \"react-dom\";\nimport \"../../../Dialog/Dialog.module.css.js\";\nimport \"framer-motion\";\nimport \"../../../../../containers/DialogContainer/DialogContainer.emitter.js\";\nimport \"../../../../../utils/redirectLogin.js\";\nimport \"../../../../../utils/event-properties/source.js\";\nimport { Skeleton } from \"../../../../@shared/Skeleton/Skeleton.js\";\nimport { formatDate as format } from \"../../../../../node_modules/date-fns/format.js\";\nconst BrandProfilesHeadline = ({\n  brandSaleGroupId,\n  subscription,\n  index,\n  isPending\n}) => {\n  const {\n    isActive,\n    isBefore,\n    isAfter,\n    startDate,\n    endDate\n  } = useCouponScheduleContext();\n  const breakpoint = useBreakpoint();\n  const theme = useTheme();\n  const eventKeys = splitToStringArray(subscription.eventKeys);\n  const renderHeadlineAction = () => {\n    if (isActive && endDate) {\n      return /* @__PURE__ */ jsx(Countdown, { targetDateString: format(endDate, \"yyyy-MM-dd\"), targetTimeString: format(endDate, \"HH:mm:ss\"), dateDisplayFormat: \"D\uC77C\", timeDisplayFormat: \"H\uC2DC\uAC04 m\uBD84 s\uCD08\", fontSize: 15, color: countdownColorByTheme[theme], style: {\n        ...typography(15, 500)\n      } });\n    }\n    if (isBefore) {\n      return subscription.visible ? /* @__PURE__ */ jsx(SubscriptionButton, { activeColor: subscription.activeColor, sectionKey: `${brandSaleGroupId}`, eventKey: eventKeys[index] ?? \"\", restEventKeys: restOf(eventKeys, index) }) : null;\n    }\n    return null;\n  };\n  const renderHeadlineTitle = () => {\n    if (isActive) {\n      return \"\uC885\uB8CC\uAE4C\uC9C0 \uB0A8\uC740 \uC2DC\uAC04\";\n    }\n    if (isBefore && startDate) {\n      return `${format(startDate, \"a h\uC2DC\", {\n        locale: ko\n      })} \uC624\uD508`;\n    }\n    if (isAfter) {\n      return \"\uC885\uB8CC\uB41C \uC774\uBCA4\uD2B8\";\n    }\n    return \"\";\n  };\n  return /* @__PURE__ */ jsxs(Fragment, { children: [\n    /* @__PURE__ */ jsx(\"div\", { style: {\n      borderTop: borderStyleByTheme[theme],\n      ...dividerStyleByBreakpoint[breakpoint]\n    } }),\n    /* @__PURE__ */ jsx(Headline.Root, { priority: \"secondary\", children: /* @__PURE__ */ jsxs(Headline.Content, { children: [\n      /* @__PURE__ */ jsx(Headline.Body, { style: headlineTitleStyle, children: /* @__PURE__ */ jsx(Headline.Title, { children: isPending ? /* @__PURE__ */ jsx(Skeleton, { style: {\n        ...headlineTitleSkeletonStyle,\n        ...skeletonStyleByTheme[theme]\n      } }) : renderHeadlineTitle() }) }),\n      /* @__PURE__ */ jsx(Headline.Action, { style: {\n        color: \"#FFFFFF\"\n      }, children: isPending ? /* @__PURE__ */ jsx(Skeleton, { style: {\n        ...headlineTitleSkeletonStyle,\n        ...skeletonStyleByTheme[theme]\n      } }) : renderHeadlineAction() })\n    ] }) })\n  ] });\n};\nconst dividerStyleByBreakpoint = {\n  desktop: {\n    margin: 0\n  },\n  tablet: {\n    margin: \"0 20px\"\n  },\n  mobile: {\n    margin: \"0 20px\"\n  }\n};\nconst headlineTitleStyle = {\n  display: \"flex\",\n  alignItems: \"center\",\n  justifyContent: \"center\",\n  height: 40\n};\nconst headlineTitleSkeletonStyle = {\n  width: 90,\n  height: 21,\n  borderRadius: 2\n};\nconst borderStyleByTheme = {\n  light: \"1px solid #E4E4E4\",\n  dark: \"1px solid #27272A\"\n};\nconst skeletonStyleByTheme = {\n  light: {\n    backgroundColor: \"#dee2e6\"\n  },\n  dark: {\n    backgroundColor: \"#27272a\"\n  }\n};\nconst countdownColorByTheme = {\n  light: \"#FF4800\",\n  dark: \"#D53E00\"\n};\nexport {\n  BrandProfilesHeadline\n};\n", "import { jsx, jsxs } from \"react/jsx-runtime\";\nimport { addPropertyControls, ControlType } from \"framer\";\nimport { CalendarTags } from \"./CalendarTags/CalendarTags.js\";\nimport { Brand } from \"./Brand/Brand.js\";\nimport { BrandProfiles } from \"./BrandProfiles/BrandProfiles.js\";\nimport { CouponScheduleProvider } from \"./provider/CouponScheduleProvider/CouponScheduleProvider.js\";\nimport { SECTION_CONTROLS } from \"../../../../libs/property-controls/section.js\";\nimport { Headline } from \"../../Headline/Headline.js\";\nimport { COUPON_CONTROLS, toBackgroundColor } from \"../../../../libs/property-controls/coupon.js\";\nimport { SUBSCRIPTION_CONTROLS } from \"../../../../libs/property-controls/subscription.js\";\nimport { BrandProfilesHeadline } from \"./BrandProfilesHeadline/BrandProfilesHeadline.js\";\nimport { SectionLayout } from \"../SectionLayout/SectionLayout.js\";\nimport { useTrackSnowplowEvent } from \"../../../../hooks/snowplow/useTrackSnowplowEvent.js\";\nimport { Intersection } from \"../../../@shared/Intersection/Intersection.js\";\nimport \"react-dom\";\nimport \"../../../@shared/Icon/Icon.js\";\nimport { SWRErrorBoundary } from \"../../../@shared/SWRErrorBoundary/SWRErrorBoundary.js\";\nimport { NoContent } from \"../NoContent/NoContent.js\";\nimport { SWRPersistentCache } from \"../../../@shared/swr/SWRPersistentCache/SWRPersistentCache.js\";\nimport { EventTrigger } from \"../../../@shared/EventTrigger/index.js\";\nconst CouponCollection = ({\n  brandSaleGroupId,\n  componentId,\n  headline,\n  theme,\n  breakpoint,\n  backgroundColor,\n  subscription,\n  scheduleTag\n}) => {\n  const trackSnowplowEvent = useTrackSnowplowEvent();\n  const handleView = () => {\n    trackSnowplowEvent(\"view_content\", {\n      source: componentId || null\n    });\n  };\n  const handleImpression = () => {\n    trackSnowplowEvent(\"impression_content\", {\n      // NOTE(\uAE40\uD64D\uB3D9): section_name, position, layout_position \uD504\uB85C\uD37C\uD2F0\uC5D0 \uD560\uB2F9\uD55C \uC57D\uC18D\uB41C \uC784\uC758 \uAC12 \uC218\uC815\n      section_name: componentId,\n      section_title: componentId,\n      position: -1,\n      layout_position: -1\n    });\n  };\n  return /* @__PURE__ */ jsx(Intersection, { onView: handleView, children: /* @__PURE__ */ jsxs(SectionLayout, { theme, breakpoint, componentId, children: [\n    /* @__PURE__ */ jsx(Headline, { ...headline, priority: \"primary\" }),\n    /* @__PURE__ */ jsx(SWRErrorBoundary, { fallback: (retry) => /* @__PURE__ */ jsx(NoContent, { onClick: retry }), children: /* @__PURE__ */ jsx(SWRPersistentCache, { children: /* @__PURE__ */ jsx(EventTrigger.Root, { types: [\"impression\"], onImpression: handleImpression, children: /* @__PURE__ */ jsx(CalendarTags, { brandSaleGroupId, scheduleTag, children: ({\n      brandSaleId,\n      startDate,\n      endDate,\n      index,\n      pending\n    }) => /* @__PURE__ */ jsxs(CouponScheduleProvider, { startDate, endDate, children: [\n      /* @__PURE__ */ jsx(BrandProfilesHeadline, { isPending: pending, brandSaleGroupId, subscription, index }),\n      /* @__PURE__ */ jsx(BrandProfiles, { brandSaleId, couponColor: toBackgroundColor(backgroundColor), children: (couponCollectionId, frontBrand) => /* @__PURE__ */ jsx(Brand, { couponCollectionId, frontBrand }) })\n    ] }) }) }) }) })\n  ] }) });\n};\naddPropertyControls(CouponCollection, {\n  ...SECTION_CONTROLS,\n  ...COUPON_CONTROLS,\n  brandSaleGroupId: {\n    type: ControlType.String,\n    title: \"\uBE0C\uB79C\uB4DC \uC138\uC77C \uADF8\uB8F9 ID\"\n  },\n  ...SUBSCRIPTION_CONTROLS,\n  scheduleTag: {\n    type: ControlType.Object,\n    title: \"\uC2A4\uCF00\uC904 \uD0DC\uADF8\",\n    controls: {\n      visible: {\n        type: ControlType.Boolean,\n        title: \"\uB178\uCD9C \uC5EC\uBD80\",\n        defaultValue: true\n      },\n      color: {\n        type: ControlType.Color,\n        title: \"\uC0C9\uC0C1\",\n        defaultValue: \"#000\"\n      },\n      href: {\n        type: ControlType.Link,\n        title: \"URL\"\n      }\n    }\n  }\n});\nexport {\n  CouponCollection\n};\n", "/** local */// import { CouponCollection } from \"https://localhost:4173/components/systems/curations/CouponCollection/CouponCollection.js\"\n/** dev */// import { CouponCollection } from \"https://asset.29cm.co.kr/contents/framer/dev/components/systems/curations/CouponCollection/CouponCollection.js\"\n/** production */import{CouponCollection}from\"https://asset.29cm.co.kr/contents/framer/components/systems/curations/CouponCollection/CouponCollection.js\";CouponCollection.displayName=\"[curation]CouponCollection\";/**\n * @framerDisableUnlink\n */export default CouponCollection;\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"CouponCollection\",\"slots\":[],\"annotations\":{\"framerDisableUnlink\":\"\",\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./CouponCollection.map"],
  "mappings": "+oCAGA,IAAMA,GAAqBC,GAAqB,CAC9C,GAAM,CACJ,SAAAC,CACF,EAAIC,EAAuB,EACrB,CACJ,UAAAC,EACA,MAAAC,EACA,KAAAC,CACF,EAAIC,GAAuBN,EAAkBC,CAAQ,EAE/CM,EAAYJ,GADDC,IAAU,OAErBI,EAAyCH,GAAK,KAAK,eAAkB,CAAC,EAE5E,MAAO,CACL,MAFoCA,GAAK,KAAK,MAG9C,cAAAG,EACA,UAAAD,CACF,CACF,ECYA,IAAME,GAAgB,EAChBC,GAAuB,qBACvBC,GAAeC,EAAK,CAAC,CACzB,SAAAC,EACA,iBAAAC,EACA,YAAAC,CACF,IAAM,CACJ,IAAMC,EAAcC,EAAe,EAC7B,CACJ,WAAAC,EACA,2BAAAC,CACF,EAAIC,EAAc,EACZC,EAAqBC,EAAsB,EAC3CC,EAAQC,EAAS,EACjBC,EAAaC,EAAc,EAC3B,CACJ,cAAAC,EACA,UAAAC,CACF,EAAIC,GAAkBf,CAAgB,EAChCgB,EAAeC,EAAQ,IAAMC,GAAyBL,CAAa,GAAK,EAAG,CAACA,CAAa,CAAC,EAC1FM,EAAsB,IAAM,CAChCZ,EAAmB,eAAgB,CACjC,aAAcL,EACd,cAAeA,EACf,SAAU,GACV,UAAW,iBACX,YAAaN,GACb,gBAAiB,EACnB,CAAC,CACH,EACMwB,EAAc,CAACC,EAAMC,IAAU,IAAM,CACpCD,IAGLjB,EAAW,CACT,eAAgB,MAChB,SAAU,OACV,SAAUiB,EAAK,MACf,SAAUC,EAAQ,CACpB,CAAC,EACDjB,EAA2B,CACzB,SAAU,OACV,UAAWgB,EAAK,KAClB,CAAC,EACH,EACA,OAAuBE,EAAKC,EAAK,KAAM,CAAE,aAAc7B,GAAe,MAAOqB,EAAc,QAASF,EAAW,gBAAiBb,EAAY,QAAU,EAAI,OAAQ,SAAU,CAC1JsB,EAAK,MAAO,CAAE,MAAOE,GAAgB,SAAU,CAC7DxB,EAAY,QAA0ByB,EAAI,MAAO,CAAE,MAAO,CACxD,GAAGC,GAAyBhB,CAAU,EACtC,GAAGiB,GAAoBnB,CAAK,EAC5B,GAAGoB,EACL,EAAG,SAA0BH,EAAII,EAAa,OAAQ,CAAE,QAASX,EAAqB,SAA0BO,EAAI,IAAK,CAAE,MAAOK,GAAa,KAAM9B,EAAY,KAAM,OAAQ,SAAU,IAAK,aAAc,SAA0BsB,EAAKS,GAAK,CAAE,MAAO,CACvP,GAAGC,GACH,MAAOhC,EAAY,MACnB,YAAaA,EAAY,KAC3B,EAAG,SAAU,CACXL,GACA,IACgB8B,EAAIQ,EAAM,CAAE,KAAM,aAAc,MAAOjC,EAAY,MAAO,KAAM,GAAM,OAAQ,OAAQ,KAAM,EAAG,CAAC,CAClH,CAAE,CAAC,CAAE,CAAC,CAAE,CAAC,CAAE,CAAC,EAAI,KACAyB,EAAIF,EAAK,KAAM,CAAE,KAAMX,EAAe,SAAU,CAAC,CAC/D,MAAAS,EACA,KAAAD,CACF,IAAsBK,EAAIF,EAAK,KAAM,CAAE,MAAOF,EAAO,QAASF,EAAYC,EAAMC,CAAK,EAAG,SAAUD,EAAOc,GAAmB,CAC1H,eAAgBd,EAAK,eACrB,aAAcA,EAAK,YACrB,CAAC,EAAI,EAAG,CAAC,CAAE,CAAC,CACd,CAAE,CAAC,EACaK,EAAIF,EAAK,OAAQ,CAAE,KAAMX,EAAe,SAAU,CAAC,CACjE,KAAAQ,EACA,MAAAC,EACA,QAAAc,CACF,IACyBV,EAAIF,EAAK,MAAO,CAAE,MAAOF,EAAO,SAAUvB,EAAS,CACxE,YAAqCsB,GAAK,YAC1C,UAAWA,EAAO,IAAI,KAAKA,EAAK,cAAc,EAAI,OAClD,QAASA,EAAO,IAAI,KAAKA,EAAK,YAAY,EAAI,OAC9C,MAAAC,EACA,QAAAc,CACF,CAAC,CAAE,EAA2Bf,GAAK,WAAW,CAC9C,CAAC,CACL,CAAE,CAAC,CACL,CAAC,EACKI,GAAiB,CACrB,MAAO,OACP,QAAS,OACT,WAAY,QACd,EACMI,GAAe,CACnB,aAAc,EACd,aAAc,GACd,UAAW,YACb,EACMD,GAAsB,CAC1B,MAAO,CACL,YAAa,qBACf,EACA,KAAM,CACJ,YAAa,qBACf,CACF,EACMD,GAA2B,CAC/B,QAAS,CACP,YAAa,CACf,EACA,OAAQ,CACN,YAAa,EACf,EACA,OAAQ,CACN,YAAa,EACf,CACF,EACMI,GAAc,CAClB,eAAgB,MAClB,EACME,GAAW,CACf,QAAS,OACT,WAAY,SACZ,IAAK,EACL,aAAc,GACd,gBAAiB,cACjB,YAAa,EACb,YAAa,OACf,EC3JA,IAAMI,GAA+BC,GAAuB,CAE1D,IAAMC,EADwBD,IAAuB,OAE/C,CACJ,SAAAE,EACA,UAAAC,EACA,QAAAC,EACA,QAAAC,CACF,EAAIC,GAAiCN,GAAsB,EAAGC,CAAO,EACrE,MAAO,CACL,UAAAE,EACA,SAAAD,EACA,QAAAG,EACA,QAAAD,CACF,CACF,ECgBA,IAAMG,GAAuB,mBACvBC,GAAqB,wCACrBC,GAAgB,CAAC,CACrB,mBAAAC,EACA,UAAAC,EACA,WAAAC,CACF,IAAM,CACJ,IAAMC,EAAQC,EAAS,EACjBC,EAAcC,EAAe,EAC7BC,EAA+B,IAAI,gBAAgB,CACvD,OAAQF,GAAeR,EACzB,CAAC,EAAE,SAAS,EACNW,EAA0B,GAAGC,EAAI,UAAU,OAAO,sBAAsBT,CAAkB,IAAIO,CAA4B,GAC1HG,EAA+BC,GAAgBH,CAAuB,EACtEI,EAAqBC,EAAsB,EAC3CC,EAAoB,IAAM,CACzBd,IAGLU,EAA6B,EAC7BE,EAAmB,eAAgB,CACjC,aAAcP,EACd,cAAeA,EACf,SAAU,GACV,UAAW,OACX,YAAaP,GACb,gBAAiB,EACnB,CAAC,EACH,EACA,OAAuBiB,EAAIC,EAAS,KAAM,CAAE,SAAU,WAAY,SAA0BC,EAAKD,EAAS,QAAS,CAAE,SAAU,CAC5Hf,EAGsBc,EAAI,MAAO,CAAE,MAAO,CACzC,MAAO,MACT,EAAG,SAA0BA,EAAIG,EAAU,CAAE,MAAO,CAClD,OAAQ,KACR,MAAO,IACP,aAAc,EACd,GAAGC,GAAqBhB,CAAK,CAC/B,CAAE,CAAC,CAAE,CAAC,EAVuBc,EAAKD,EAAS,MAAO,CAAE,SAAU,CAC7Bd,GAAW,SAAY,GACtD,kCACF,CAAE,CAAC,EAQaa,EAAIC,EAAS,OAAQ,CAAE,SAA0BD,EAAIK,EAAa,OAAQ,CAAE,QAASN,EAAmB,SAA0BC,EAAIM,GAAS,CAAE,MAAO,CACtK,QAAS,EACX,EAAG,MAAAlB,EAAO,QAAS,UAAW,KAAM,SAAU,YAAa,eAAgB,SAAUL,EAAmB,CAAC,CAAE,CAAC,CAAE,CAAC,CACjH,CAAE,CAAC,CAAE,CAAC,CACR,EACMqB,GAAuB,CAC3B,MAAO,CACL,gBAAiB,SACnB,EACA,KAAM,CACJ,gBAAiB,SACnB,CACF,EC7EA,IAAMG,GAAQ,CAAC,CACb,mBAAAC,EACA,WAAAC,CACF,IAAM,CACJ,IAAMC,EAAcC,EAAe,EAC7B,CACJ,UAAAC,EACA,SAAAC,EACA,QAAAC,EACA,QAAAC,CACF,EAAIC,GAA4BR,CAAkB,EAC5CS,EAAUL,GAAaC,EAAS,SAAW,EACjD,OAAuBK,EAAKC,EAAU,CAAE,SAAU,CAChCC,EAAIC,GAAe,CAAE,UAAW,CAACZ,EAAY,WAAAA,EAAY,mBAAAD,CAAmB,CAAC,EAC7EY,EAAIE,EAAS,KAAM,CAAE,QAAAR,EAAS,QAASS,GAAsB,SAAAV,EAAU,QAAAI,EAAS,eAAgB,IAAM,CACpHF,EAASS,GAASA,EAAO,CAAC,CAC5B,EAAG,SAAU,CAAC,CACZ,MAAAC,CACF,IAAsBL,EAAIM,EAAa,OAAQ,CAAE,SAA0BN,EAAIE,EAAS,KAAM,CAAE,MAAAG,EAAO,cAAef,CAAY,CAAC,CAAE,CAAC,CAAE,CAAC,CAC3I,CAAE,CAAC,CACL,EC3BA,IAAMiB,GAAiBC,GAAgB,CACrC,IAAIC,EAEJ,IAAMC,EADiBF,IAAgB,OAEjC,CACJ,UAAAG,EACA,MAAAC,EACA,KAAAC,CACF,EAAIC,GAAmBN,GAAe,EAAGE,CAAO,EAC1CK,IAAwBN,EAA6BI,GAAK,OAAS,KAAO,OAASJ,EAAG,sBAAwB,CAAC,EAGrH,MAAO,CACL,UAFgBE,GADDC,IAAU,QACgB,CAACF,EAG1C,oBAAAK,CACF,CACF,ECjBA,IAAMC,GAAgBC,GAAW,CAC/B,GAAKA,EAGL,MAAO,CACL,GAAGA,EACH,GAAIA,EAAO,QACb,CACF,ECsBA,IAAMC,EAAmB,IACnBC,EAAM,GACNC,GAAgB,CAAC,CACrB,SAAAC,EACA,YAAAC,EACA,YAAAC,CACF,IAAM,CACJ,IAAMC,EAAaC,EAAc,EAC3B,CACJ,WAAAC,EACA,2BAAAC,CACF,EAAIC,EAAc,EACZ,CACJ,UAAAC,EACA,oBAAAC,CACF,EAAIC,GAAcT,CAAW,EACvBU,EAAc,CAACC,EAAOC,IAAU,IAAM,CACrCD,IAGLP,EAAW,CACT,eAAgB,MAChB,SAAU,QACV,SAAUO,EAAM,QAChB,UAAWA,EAAM,aACjB,SAAUC,EAAQ,CACpB,CAAC,EACDP,EAA2B,CACzB,SAAU,QACV,UAAWM,EAAM,OACnB,CAAC,EACH,EACA,OAAuBE,EAAKC,EAAS,KAAM,CAAE,QAASP,EAAW,MAAO,EAAG,SAAU,CACnEM,EAAK,MAAO,CAAE,MAAO,CACnC,GAAGE,GACH,GAAGC,GAAgCd,CAAU,CAC/C,EAAG,SAAU,CACKe,EAAI,MAAO,CAAE,MAAOC,GAA8BhB,CAAU,EAAG,SAA0Be,EAAIH,EAAS,KAAM,CAAE,KAAMN,EAAqB,SAAU,CAAC,CAClK,KAAAW,EACA,MAAAP,CACF,IAAsBK,EAAIH,EAAS,KAAM,CAAE,MAAOF,EAAO,KAA+BO,GAAK,WAAW,SAAY,GAAI,SAAmCA,GAAK,WAAW,cAAiB,GAAI,QAAST,EAAoCS,GAAK,WAAYP,CAAK,CAAE,CAAC,CAAE,CAAC,CAAE,CAAC,EAC5PK,EAAI,MAAO,CAAE,MAAO,CAClC,GAAGG,GACH,GAAGC,GAA6BnB,CAAU,CAC5C,EAAG,SAA0Be,EAAIH,EAAS,OAAQ,CAAE,KAAMN,EAAqB,SAAU,CAAC,CACxF,KAAAW,EACA,MAAAP,CACF,IAAsBK,EAAIH,EAAS,MAAO,CAAE,MAAOF,EAAO,SAA0BK,EAAIK,GAAoB,CAAE,OAAQC,GAAqCJ,GAAK,MAAM,EAAG,gBAAiBlB,CAAY,CAAC,CAAE,CAAC,CAAE,CAAC,CAAE,CAAC,CAClN,CAAE,CAAC,EACagB,EAAIH,EAAS,OAAQ,CAAE,KAAMN,EAAqB,SAAU,CAAC,CAC3E,KAAAW,EACA,MAAAP,CACF,IAAsBK,EAAIH,EAAS,MAAO,CAAE,MAAOF,EAAO,SAAUb,EAAiCoB,GAAK,mBAA4CA,GAAK,UAAU,CAAE,CAAC,CAAE,CAAC,CAC7K,CAAE,CAAC,CACL,EACMJ,GAA0B,CAC9B,QAAS,OACT,MAAO,MACT,EACMC,GAAkC,CACtC,QAAS,CACP,cAAe,MACf,IAAKnB,CACP,EACA,OAAQ,CACN,cAAe,MACf,IAAKA,CACP,EACA,OAAQ,CACN,cAAe,QACjB,CACF,EACMqB,GAAgC,CACpC,QAAS,CACP,MAAO,eAAetB,CAAgB,QAAQC,CAAG,KACnD,EACA,OAAQ,CACN,MAAO,eAAeD,CAAgB,QAAQC,CAAG,KACnD,EACA,OAAQ,CACN,MAAO,MACT,CACF,EACMuB,GAAuB,CAC3B,MAAO,MACT,EACMC,GAA+B,CACnC,QAAS,CACP,SAAUzB,EACV,QAAS,CACX,EACA,OAAQ,CACN,SAAUA,EACV,QAAS,kBACX,EACA,OAAQ,CACN,QAAS,eACX,CACF,EC7HA,IAAM4B,EAAwBC,EAAc,IAAI,EAC1CC,GAAyB,CAAC,CAC9B,SAAAC,EACA,UAAAC,EACA,QAAAC,CACF,IAAM,CACJ,IAAMC,EAAUF,IAAc,QAAUC,IAAY,OAC9CE,EAAaC,EAAQ,IAAMF,GAAWG,EAAyB,IAAI,KAAQL,CAAS,EAAG,CAACE,EAASF,CAAS,CAAC,EAC3GM,EAAUF,EAAQ,IAAMF,GAAWG,EAASJ,EAAyB,IAAI,IAAM,EAAG,CAACC,EAASD,CAAO,CAAC,EACpGM,EAAWH,EAAQ,IAAMF,GAAWG,EAASL,EAA2B,IAAI,IAAM,GAAKK,EAAyB,IAAI,KAAQJ,CAAO,EAAG,CAACC,EAASF,EAAWC,CAAO,CAAC,EACzK,OAAuBO,EAAIZ,EAAsB,SAAU,CAAE,MAAO,CAClE,UAAAI,EACA,QAAAC,EACA,SAAUE,EACV,QAAAG,EACA,SAAAC,CACF,EAAG,SAAAR,CAAS,CAAC,CACf,EClBA,IAAMU,GAA2B,IAAM,CACrC,IAAMC,EAAUC,EAAWC,CAAqB,EAChD,GAAI,CAACF,EACH,MAAM,IAAI,MAAM,iEAAiE,EAEnF,OAAOA,CACT,EC0BA,IAAMG,GAAwB,CAAC,CAC7B,iBAAAC,EACA,aAAAC,EACA,MAAAC,EACA,UAAAC,CACF,IAAM,CACJ,GAAM,CACJ,SAAAC,EACA,SAAAC,EACA,QAAAC,EACA,UAAAC,EACA,QAAAC,CACF,EAAIC,GAAyB,EACvBC,EAAaC,EAAc,EAC3BC,EAAQC,EAAS,EACjBC,EAAYC,GAAmBd,EAAa,SAAS,EACrDe,EAAuB,IACvBZ,GAAYI,EACSS,EAAIC,EAAW,CAAE,iBAAkBC,EAAOX,EAAS,YAAY,EAAG,iBAAkBW,EAAOX,EAAS,UAAU,EAAG,kBAAmB,UAAM,kBAAmB,gCAAa,SAAU,GAAI,MAAOY,GAAsBR,CAAK,EAAG,MAAO,CACzP,GAAGS,EAAW,GAAI,GAAG,CACvB,CAAE,CAAC,EAEDhB,GACKJ,EAAa,QAA0BgB,EAAIK,GAAoB,CAAE,YAAarB,EAAa,YAAa,WAAY,GAAGD,CAAgB,GAAI,SAAUc,EAAUZ,CAAK,GAAK,GAAI,cAAeqB,GAAOT,EAAWZ,CAAK,CAAE,CAAC,EAExN,KAEHsB,EAAsB,IACtBpB,EACK,qDAELC,GAAYE,EACP,GAAGY,EAAOZ,EAAW,YAAQ,CAClC,OAAQkB,EACV,CAAC,CAAC,gBAEAnB,EACK,wCAEF,GAET,OAAuBoB,EAAKC,EAAU,CAAE,SAAU,CAChCV,EAAI,MAAO,CAAE,MAAO,CAClC,UAAWW,GAAmBhB,CAAK,EACnC,GAAGiB,GAAyBnB,CAAU,CACxC,CAAE,CAAC,EACaO,EAAIa,EAAS,KAAM,CAAE,SAAU,YAAa,SAA0BJ,EAAKI,EAAS,QAAS,CAAE,SAAU,CACvGb,EAAIa,EAAS,KAAM,CAAE,MAAOC,GAAoB,SAA0Bd,EAAIa,EAAS,MAAO,CAAE,SAAU3B,EAA4Bc,EAAIe,EAAU,CAAE,MAAO,CAC3K,GAAGC,GACH,GAAGC,GAAqBtB,CAAK,CAC/B,CAAE,CAAC,EAAIY,EAAoB,CAAE,CAAC,CAAE,CAAC,EACjBP,EAAIa,EAAS,OAAQ,CAAE,MAAO,CAC5C,MAAO,SACT,EAAG,SAAU3B,EAA4Bc,EAAIe,EAAU,CAAE,MAAO,CAC9D,GAAGC,GACH,GAAGC,GAAqBtB,CAAK,CAC/B,CAAE,CAAC,EAAII,EAAqB,CAAE,CAAC,CACjC,CAAE,CAAC,CAAE,CAAC,CACR,CAAE,CAAC,CACL,EACMa,GAA2B,CAC/B,QAAS,CACP,OAAQ,CACV,EACA,OAAQ,CACN,OAAQ,QACV,EACA,OAAQ,CACN,OAAQ,QACV,CACF,EACME,GAAqB,CACzB,QAAS,OACT,WAAY,SACZ,eAAgB,SAChB,OAAQ,EACV,EACME,GAA6B,CACjC,MAAO,GACP,OAAQ,GACR,aAAc,CAChB,EACML,GAAqB,CACzB,MAAO,oBACP,KAAM,mBACR,EACMM,GAAuB,CAC3B,MAAO,CACL,gBAAiB,SACnB,EACA,KAAM,CACJ,gBAAiB,SACnB,CACF,EACMd,GAAwB,CAC5B,MAAO,UACP,KAAM,SACR,EC/GA,IAAMe,EAAmB,CAAC,CACxB,iBAAAC,EACA,YAAAC,EACA,SAAAC,EACA,MAAAC,EACA,WAAAC,EACA,gBAAAC,EACA,aAAAC,EACA,YAAAC,CACF,IAAM,CACJ,IAAMC,EAAqBC,EAAsB,EAC3CC,EAAa,IAAM,CACvBF,EAAmB,eAAgB,CACjC,OAAQP,GAAe,IACzB,CAAC,CACH,EACMU,EAAmB,IAAM,CAC7BH,EAAmB,qBAAsB,CAEvC,aAAcP,EACd,cAAeA,EACf,SAAU,GACV,gBAAiB,EACnB,CAAC,CACH,EACA,OAAuBW,EAAIC,EAAc,CAAE,OAAQH,EAAY,SAA0BI,EAAKC,GAAe,CAAE,MAAAZ,EAAO,WAAAC,EAAY,YAAAH,EAAa,SAAU,CACvIW,EAAII,GAAU,CAAE,GAAGd,EAAU,SAAU,SAAU,CAAC,EAClDU,EAAIK,GAAkB,CAAE,SAAWC,GAA0BN,EAAIO,GAAW,CAAE,QAASD,CAAM,CAAC,EAAG,SAA0BN,EAAIQ,GAAoB,CAAE,SAA0BR,EAAIS,EAAa,KAAM,CAAE,MAAO,CAAC,YAAY,EAAG,aAAcV,EAAkB,SAA0BC,EAAIU,GAAc,CAAE,iBAAAtB,EAAkB,YAAAO,EAAa,SAAU,CAAC,CACrW,YAAAgB,EACA,UAAAC,EACA,QAAAC,EACA,MAAAC,EACA,QAAAC,CACF,IAAsBb,EAAKc,GAAwB,CAAE,UAAAJ,EAAW,QAAAC,EAAS,SAAU,CACjEb,EAAIiB,GAAuB,CAAE,UAAWF,EAAS,iBAAA3B,EAAkB,aAAAM,EAAc,MAAAoB,CAAM,CAAC,EACxFd,EAAIkB,GAAe,CAAE,YAAAP,EAAa,YAAaQ,EAAkB1B,CAAe,EAAG,SAAU,CAAC2B,EAAoBC,KAA+BrB,EAAIsB,GAAO,CAAE,mBAAAF,EAAoB,WAAAC,EAAW,CAAC,CAAE,CAAC,CACnN,CAAE,CAAC,CAAE,CAAC,CAAE,CAAC,CAAE,CAAC,CAAE,CAAC,CACjB,CAAE,CAAC,CAAE,CAAC,CACR,EACAE,EAAoBpC,EAAkB,CACpC,GAAGqC,GACH,GAAGC,EACH,iBAAkB,CAChB,KAAMC,EAAY,OAClB,MAAO,iDACT,EACA,GAAGC,GACH,YAAa,CACX,KAAMD,EAAY,OAClB,MAAO,kCACP,SAAU,CACR,QAAS,CACP,KAAMA,EAAY,QAClB,MAAO,4BACP,aAAc,EAChB,EACA,MAAO,CACL,KAAMA,EAAY,MAClB,MAAO,eACP,aAAc,MAChB,EACA,KAAM,CACJ,KAAMA,EAAY,KAClB,MAAO,KACT,CACF,CACF,CACF,CAAC,ECrFyJE,EAAiB,YAAY,6BAEpL,IAAOC,GAAQD",
  "names": ["useBrandSaleGroup", "brandSaleGroupId", "isInView", "useIntersectionContext", "isLoading", "error", "data", "useFetchBrandSaleGroup", "isPending", "brandSaleList", "DEFAULT_INDEX", "SCHEDULE_BUTTON_NAME", "CalendarTags", "X", "children", "brandSaleGroupId", "scheduleTag", "componentId", "useComponentId", "trackEvent", "trackClickTagSnowplowEvent", "useTrackEvent", "trackSnowplowEvent", "useTrackSnowplowEvent", "theme", "useTheme", "breakpoint", "useBreakpoint", "brandSaleList", "isPending", "useBrandSaleGroup", "currentIndex", "se", "getCurrentBrandSaleIndex", "handleClickSchedule", "handleClick", "item", "index", "u", "Tags", "containerStyle", "p", "wrapperStyleByBreakpoint", "wrapperStyleByTheme", "wrapperStyle", "EventTrigger", "anchorStyle", "Tag", "tagStyle", "Icon", "getCalendarTagName", "pending", "useCouponCollectionProducts", "couponCollectionId", "enabled", "products", "isPending", "hasNext", "setSize", "useFetchCouponCollectionProducts", "DEFAULT_COMPONENT_ID", "ACTION_BUTTON_NAME", "BrandHeadline", "couponCollectionId", "isPending", "frontBrand", "theme", "useTheme", "componentId", "useComponentId", "couponCollectionSearchParams", "couponCollectionPageUrl", "env", "navigateCouponCollectionPage", "useNavigatePage", "trackSnowplowEvent", "useTrackSnowplowEvent", "handleButtonClick", "p", "Headline", "u", "Skeleton", "skeletonStyleByTheme", "EventTrigger", "Default", "Brand", "couponCollectionId", "frontBrand", "componentId", "useComponentId", "isPending", "products", "hasNext", "setSize", "useCouponCollectionProducts", "loading", "u", "l", "p", "BrandHeadline", "Products", "CARD_HORIZONTAL_AUTO", "prev", "index", "EventTrigger", "useBrandSales", "brandSaleId", "_a", "enabled", "isLoading", "error", "data", "useFetchBrandSales", "brandSaleCouponList", "formatCoupon", "coupon", "COUPON_MAX_WIDTH", "GAP", "BrandProfiles", "children", "brandSaleId", "couponColor", "breakpoint", "useBreakpoint", "trackEvent", "trackClickTagSnowplowEvent", "useTrackEvent", "isPending", "brandSaleCouponList", "useBrandSales", "handleClick", "brand", "index", "u", "Profiles", "profilesLayoutBaseStyle", "profilesLayoutStyleByBreakpoint", "p", "profilesListStyleByBreakpoint", "item", "brandCouponBaseStyle", "brandCouponStyleByBreakpoint", "DownloadableCoupon", "formatCoupon", "CouponScheduleContext", "z", "CouponScheduleProvider", "children", "startDate", "endDate", "hasDate", "isBefore$1", "se", "isBefore", "isAfter", "isActive", "p", "useCouponScheduleContext", "context", "re", "CouponScheduleContext", "BrandProfilesHeadline", "brandSaleGroupId", "subscription", "index", "isPending", "isActive", "isBefore", "isAfter", "startDate", "endDate", "useCouponScheduleContext", "breakpoint", "useBreakpoint", "theme", "useTheme", "eventKeys", "splitToStringArray", "renderHeadlineAction", "p", "Countdown", "format", "countdownColorByTheme", "typography", "SubscriptionButton", "restOf", "renderHeadlineTitle", "ko", "u", "l", "borderStyleByTheme", "dividerStyleByBreakpoint", "Headline", "headlineTitleStyle", "Skeleton", "headlineTitleSkeletonStyle", "skeletonStyleByTheme", "CouponCollection", "brandSaleGroupId", "componentId", "headline", "theme", "breakpoint", "backgroundColor", "subscription", "scheduleTag", "trackSnowplowEvent", "useTrackSnowplowEvent", "handleView", "handleImpression", "p", "Intersection", "u", "SectionLayout", "Headline", "SWRErrorBoundary", "retry", "NoContent", "SWRPersistentCache", "EventTrigger", "CalendarTags", "brandSaleId", "startDate", "endDate", "index", "pending", "CouponScheduleProvider", "BrandProfilesHeadline", "BrandProfiles", "toBackgroundColor", "couponCollectionId", "frontBrand", "Brand", "addPropertyControls", "SECTION_CONTROLS", "COUPON_CONTROLS", "ControlType", "SUBSCRIPTION_CONTROLS", "CouponCollection", "CouponCollection_default"]
}
