diy-template-components 2.0.68 → 2.0.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.js CHANGED
@@ -287,6 +287,31 @@ const useSectionStyles$a = createUseStyles(theme => ({
287
287
  fontWeight: '700',
288
288
  padding: '6px 16px'
289
289
  },
290
+ BottomSheetContainer: {
291
+ display: 'flex',
292
+ flexDirection: 'column',
293
+ borderTop: '1px solid #e5e5e5',
294
+ background: '#021927',
295
+ color: '#FFFFFF'
296
+ },
297
+ BottomSheetPriceContainer: {
298
+ display: 'flex',
299
+ justifyContent: 'space-between',
300
+ padding: '16px 16px 24px'
301
+ },
302
+ BottomSheetOfferContainer: {
303
+ padding: '12px 0 ',
304
+ padding: '16px 16px 24px',
305
+ border: '1px solid rgba(0, 0, 0, 1)'
306
+ },
307
+ offerBottom: {
308
+ display: 'flex',
309
+ justifyContent: 'space-between'
310
+ },
311
+ smallText: {
312
+ fontWeight: '400',
313
+ fontSize: '8px'
314
+ },
290
315
  '@media screen and (max-width: 767px)': {
291
316
  optionsContainer: {
292
317
  flexDirection: 'column',
@@ -322,6 +347,17 @@ const useSectionStyles$a = createUseStyles(theme => ({
322
347
  borderBottom: '1px solid #F3F3F3',
323
348
  width: '100%'
324
349
  }
350
+ },
351
+ offerPrice: {
352
+ color: '#FFFFFF',
353
+ fontSize: '18px'
354
+ },
355
+ offerDiscount: {
356
+ color: 'rgba(8, 189, 128, 1)'
357
+ },
358
+ originalPrice: {
359
+ color: '#FFFFFF',
360
+ textDecoration: 'line-through'
325
361
  }
326
362
  },
327
363
  mobileAppNameClass: {
@@ -1553,13 +1589,24 @@ function DesktopHeader({
1553
1589
  }));
1554
1590
  }
1555
1591
 
1592
+ var timer = "data:image/svg+xml,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.99996%2015.1667C4.50663%2015.1667%201.66663%2012.3267%201.66663%208.83333C1.66663%205.34%204.50663%202.5%207.99996%202.5C11.4933%202.5%2014.3333%205.34%2014.3333%208.83333C14.3333%2012.3267%2011.4933%2015.1667%207.99996%2015.1667ZM7.99996%203.5C5.05996%203.5%202.66663%205.89333%202.66663%208.83333C2.66663%2011.7733%205.05996%2014.1667%207.99996%2014.1667C10.94%2014.1667%2013.3333%2011.7733%2013.3333%208.83333C13.3333%205.89333%2010.94%203.5%207.99996%203.5Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M8%209.16671C7.72667%209.16671%207.5%208.94004%207.5%208.66671V5.33337C7.5%205.06004%207.72667%204.83337%208%204.83337C8.27333%204.83337%208.5%205.06004%208.5%205.33337V8.66671C8.5%208.94004%208.27333%209.16671%208%209.16671Z%22%20fill%3D%22white%22%2F%3E%3Cpath%20d%3D%22M10%201.83337H6C5.72667%201.83337%205.5%201.60671%205.5%201.33337C5.5%201.06004%205.72667%200.833374%206%200.833374H10C10.2733%200.833374%2010.5%201.06004%2010.5%201.33337C10.5%201.60671%2010.2733%201.83337%2010%201.83337Z%22%20fill%3D%22white%22%2F%3E%3C%2Fsvg%3E";
1593
+
1556
1594
  function MobileHeader({
1557
1595
  header,
1558
1596
  navData,
1559
1597
  isTutorWebsite,
1560
1598
  isLandingPage = false,
1561
- onDownloadAppTriggered
1599
+ onDownloadAppTriggered,
1600
+ extraProps
1562
1601
  }) {
1602
+ let mockHeader = {
1603
+ isOfferActive: true,
1604
+ effectivePrice: 0.51,
1605
+ price: 1,
1606
+ discount: 0.5,
1607
+ endDate: Date.now() + 24 * 60 * 60 * 1000,
1608
+ offerPriceValidFor: 20
1609
+ };
1563
1610
  const {
1564
1611
  isCustomWebsite,
1565
1612
  countryCode
@@ -1595,6 +1642,94 @@ function MobileHeader({
1595
1642
 
1596
1643
  // console.log(header, 'sakshat header mobile');
1597
1644
 
1645
+ const getDiscount = (price, discount) => {
1646
+ return (discount / price * 100).toFixed(2);
1647
+ };
1648
+ const renderer = ({
1649
+ days,
1650
+ hours,
1651
+ minutes,
1652
+ seconds
1653
+ }) => {
1654
+ if (days === 0 && hours < 24) {
1655
+ return /*#__PURE__*/React__default["default"].createElement("div", {
1656
+ className: classes.offerBottom
1657
+ }, /*#__PURE__*/React__default["default"].createElement("div", null, "Offer ends in"), /*#__PURE__*/React__default["default"].createElement("div", {
1658
+ style: {
1659
+ display: 'flex',
1660
+ gap: '5px'
1661
+ }
1662
+ }, /*#__PURE__*/React__default["default"].createElement("img", {
1663
+ src: timer,
1664
+ alt: ""
1665
+ }), ' ', /*#__PURE__*/React__default["default"].createElement("div", null, hours, " ", /*#__PURE__*/React__default["default"].createElement("span", {
1666
+ className: classes.smallText
1667
+ }, "hrs"), " : ", minutes, ' ', /*#__PURE__*/React__default["default"].createElement("span", {
1668
+ className: classes.smallText
1669
+ }, "Mins"), " : ", seconds, ' ', /*#__PURE__*/React__default["default"].createElement("span", {
1670
+ className: classes.smallText
1671
+ }, "Secs"))));
1672
+ } else {
1673
+ let given = moment__default["default"](mockHeader.endDate);
1674
+ let current = moment__default["default"]().startOf('day');
1675
+ return /*#__PURE__*/React__default["default"].createElement("div", {
1676
+ className: classes.offerBottom
1677
+ }, /*#__PURE__*/React__default["default"].createElement("div", null, "This offer is only valid for"), /*#__PURE__*/React__default["default"].createElement("div", {
1678
+ style: {
1679
+ display: 'flex',
1680
+ gap: '5px'
1681
+ }
1682
+ }, /*#__PURE__*/React__default["default"].createElement("img", {
1683
+ src: timer,
1684
+ alt: ""
1685
+ }), ' ', /*#__PURE__*/React__default["default"].createElement("div", null, Math.floor(moment__default["default"].duration(given.diff(current)).asDays()), /*#__PURE__*/React__default["default"].createElement("span", {
1686
+ className: classes.smallText
1687
+ }, "\xA0\xA0Days"))));
1688
+ }
1689
+ };
1690
+ const OfferDetailsJSX = () => {
1691
+ return /*#__PURE__*/React__default["default"].createElement("div", {
1692
+ className: classes.BottomSheetOfferContainer
1693
+ }, ' ', /*#__PURE__*/React__default["default"].createElement(Countdown__default["default"], {
1694
+ renderer: renderer,
1695
+ date: mockHeader?.endDate
1696
+ }));
1697
+ };
1698
+ const BottomSheetJSX = () => {
1699
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", {
1700
+ className: classes.BottomSheetContainer
1701
+ }, OfferDetailsJSX(), /*#__PURE__*/React__default["default"].createElement("div", {
1702
+ className: classes.BottomSheetPriceContainer
1703
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
1704
+ className: classes.BottomSheetPrice
1705
+ }, /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement("div", {
1706
+ style: {
1707
+ textAlign: 'start'
1708
+ }
1709
+ }, /*#__PURE__*/React__default["default"].createElement("span", {
1710
+ className: classes.offerPrice
1711
+ }, mockHeader?.effectivePrice), ' '), /*#__PURE__*/React__default["default"].createElement("span", {
1712
+ className: classes.originalPrice
1713
+ }, mockHeader?.price), ' ', /*#__PURE__*/React__default["default"].createElement("span", {
1714
+ className: classes.offerDiscount
1715
+ }, `${getDiscount(mockHeader?.price, mockHeader?.discount)}%`, "\xA0OFF"), "\xA0\xA0")), /*#__PURE__*/React__default["default"].createElement(Button, {
1716
+ data: {
1717
+ // link: 'headerData?.loginCtaLink',
1718
+ // isLink: 1,
1719
+ value: 'BUY NOW'
1720
+ // isExternal: 1
1721
+ },
1722
+
1723
+ onClick: extraProps?.courseBuyNow,
1724
+ type: 'primary',
1725
+ size: 'medium',
1726
+ target: null,
1727
+ name: "button",
1728
+ rel: null
1729
+ // styling={isMobile ? { margin: '0 40px' } : {}}
1730
+ }))));
1731
+ };
1732
+
1598
1733
  if (isTutorWebsite) {
1599
1734
  if (isAndroidDelisted && apkURL) {
1600
1735
  downloadLink = /*#__PURE__*/React__default["default"].createElement(Button, {
@@ -1667,7 +1802,7 @@ function MobileHeader({
1667
1802
  downloadLink = null;
1668
1803
  }
1669
1804
  }
1670
- return /*#__PURE__*/React__default["default"].createElement("nav", {
1805
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("nav", {
1671
1806
  ref: navEl,
1672
1807
  className: classes.section
1673
1808
  }, !(header?.websiteLogo === DEFAULT_HEADER_IMAGE_LP && isCustomWebsite) ? /*#__PURE__*/React__default["default"].createElement("div", {
@@ -1700,7 +1835,7 @@ function MobileHeader({
1700
1835
  order: 1
1701
1836
  }))) : null, isTutorWebsite && header?.appName ? /*#__PURE__*/React__default["default"].createElement("p", {
1702
1837
  className: classes.mobileAppNameClass
1703
- }, " ", header?.appName) : null), downloadLink), sideMenu ? /*#__PURE__*/React__default["default"].createElement("div", {
1838
+ }, ' ', header?.appName) : null), downloadLink), sideMenu ? /*#__PURE__*/React__default["default"].createElement("div", {
1704
1839
  className: classes.mobileMenu
1705
1840
  }, /*#__PURE__*/React__default["default"].createElement("div", {
1706
1841
  className: classes.backdrop,
@@ -1720,7 +1855,7 @@ function MobileHeader({
1720
1855
  style: {
1721
1856
  paddingTop: '30px'
1722
1857
  }
1723
- }));
1858
+ })), /*#__PURE__*/React__default["default"].createElement(BottomSheetJSX, null));
1724
1859
  }
1725
1860
 
1726
1861
  function Header({