@edx/frontend-plugin-advertisements 1.23.0 → 1.23.2

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.
@@ -85,7 +85,6 @@ const UpgradeModal = _ref => {
85
85
  const intl = (0, _i18n.useIntl)();
86
86
  const dateNow = Date.now();
87
87
  const {
88
- currency,
89
88
  currencySymbol,
90
89
  price,
91
90
  upgradeUrl
@@ -103,10 +102,9 @@ const UpgradeModal = _ref => {
103
102
  href: upgradeUrl,
104
103
  children: intl.formatMessage({
105
104
  id: 'learning.upgrade-modal.upgrade-button.label',
106
- defaultMessage: 'Upgrade for {currencySymbol}{price} {currency}',
105
+ defaultMessage: 'Upgrade for {currencySymbol}{price}',
107
106
  description: 'Label for upgrade button'
108
107
  }, {
109
- currency,
110
108
  currencySymbol,
111
109
  price
112
110
  })
@@ -131,8 +129,11 @@ const UpgradeModal = _ref => {
131
129
  size: "md",
132
130
  heroIsDark: true,
133
131
  heroNode: /*#__PURE__*/(0, _jsxRuntime.jsx)(_paragon.ModalDialog.Hero, {
132
+ className: "justify-content-center",
134
133
  style: {
135
- background: 'linear-gradient(#001B1E, #0E3639)'
134
+ background: 'linear-gradient(#001B1E, #0E3639)',
135
+ borderTopLeftRadius: '6.8px',
136
+ borderTopRightRadius: '6.8px'
136
137
  },
137
138
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_paragon.ModalDialog.Hero.Content, {
138
139
  className: "m-0 text-primary-500",
@@ -144,6 +145,7 @@ const UpgradeModal = _ref => {
144
145
  }),
145
146
  footerNode: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_paragon.ActionRow, {
146
147
  isStacked: true,
148
+ className: "mb-2",
147
149
  children: [callToActionButton, offer && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
148
150
  className: "text-center discount-info",
149
151
  children: intl.formatMessage({
@@ -159,24 +161,25 @@ const UpgradeModal = _ref => {
159
161
  })]
160
162
  }),
161
163
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("h2", {
162
- className: "h3 mb-3",
164
+ className: "h3 mb-3 mt-2.5",
163
165
  children: modalTitle
164
166
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
165
167
  role: "list",
166
- className: "pl-2 text-primary-500",
168
+ className: "pl-2 text-gray-700",
167
169
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_paragon.Stack, {
168
170
  gap: 3,
169
171
  role: "listitem",
170
172
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_paragon.Stack, {
171
173
  direction: "horizontal",
172
174
  gap: 3,
175
+ className: "align-items-start",
173
176
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_paragon.Icon, {
174
177
  size: "md",
175
178
  src: _icons.Check
176
179
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
177
180
  children: intl.formatMessage({
178
181
  id: 'learning.upgrade-modal.body-list.first-item',
179
- defaultMessage: 'Earn a {linkedContent} of completion to show case your résumé',
182
+ defaultMessage: 'Earn a {linkedContent} of completion to showcase your résumé',
180
183
  description: 'Message for first list item'
181
184
  }, {
182
185
  linkedContent: /*#__PURE__*/(0, _jsxRuntime.jsx)(_paragon.Hyperlink, {
@@ -196,7 +199,7 @@ const UpgradeModal = _ref => {
196
199
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
197
200
  children: intl.formatMessage({
198
201
  id: 'learning.upgrade-modal.body-list.second-item',
199
- defaultMessage: 'Support our mission at edX.',
202
+ defaultMessage: 'Support our mission at edX',
200
203
  description: 'Message for second list item'
201
204
  })
202
205
  })]
@@ -212,7 +215,6 @@ UpgradeModal.defaultProps = {
212
215
  };
213
216
  UpgradeModal.propTypes = {
214
217
  verifiedMode: _propTypes.default.shape({
215
- currency: _propTypes.default.string.isRequired,
216
218
  price: _propTypes.default.number.isRequired,
217
219
  currencySymbol: _propTypes.default.string.isRequired,
218
220
  upgradeUrl: _propTypes.default.string.isRequired
@@ -1 +1 @@
1
- {"version":3,"file":"UpgradeModal.js","names":["_react","require","_propTypes","_interopRequireDefault","_reactSdk","_frontendPlatform","_analytics","_i18n","_paragon","_icons","_data","_certificatePreview","_jsxRuntime","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","UpgradeModal","_ref","isOpen","close","verifiedMode","org","courseId","offer","marketingUrl","accessExpiration","optimizely","decision","useDecision","OPTIMIZELY_VTR_MODAL_EXPERIMENT","KEY","variationKey","experimentProperties","experiment_key","variation_key","upsellPageName","eventProperties","org_key","courserun_key","promotionEventProperties","creative","name","position","promotion_id","useEffect","sendTrackingLogEvent","sendTrackEvent","logClick","location","linkCategory","linkName","linkType","pageName","track","ACTION","logClickPastExpiration","intl","useIntl","dateNow","Date","now","currency","currencySymbol","price","upgradeUrl","upgradeDeadlineDate","upgradeDeadline","pastDeadline","modalTitle","formatMessage","id","defaultMessage","description","callToActionButton","jsx","Button","className","onClick","href","children","jsxs","MarketingModal","title","onClose","isBlocking","size","heroIsDark","heroNode","ModalDialog","Hero","style","background","Content","bgColor","footerNode","ActionRow","isStacked","values","code","role","Stack","gap","direction","Icon","src","Check","linkedContent","Hyperlink","destination","getConfig","MARKETING_SITE_BASE_URL","defaultProps","propTypes","PropTypes","shape","string","isRequired","number","func","bool","node","_default","exports","withOptimizely"],"sources":["../../src/upgrade-modal/UpgradeModal.jsx"],"sourcesContent":["import { useEffect, React } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDecision, withOptimizely } from '@optimizely/react-sdk';\nimport { getConfig } from '@edx/frontend-platform';\nimport { sendTrackEvent, sendTrackingLogEvent } from '@edx/frontend-platform/analytics';\nimport { useIntl } from '@edx/frontend-platform/i18n';\nimport {\n ActionRow, Button, Hyperlink, Icon, MarketingModal, ModalDialog, Stack,\n} from '@openedx/paragon';\nimport { Check } from '@openedx/paragon/icons';\nimport { OPTIMIZELY_VTR_MODAL_EXPERIMENT } from '../data';\nimport CertificatePreview from '../upgrade-notification/certificate-preview';\n\nconst UpgradeModal = ({\n isOpen,\n close,\n verifiedMode,\n org,\n courseId,\n offer,\n marketingUrl,\n accessExpiration,\n optimizely,\n}) => {\n const [decision] = useDecision(OPTIMIZELY_VTR_MODAL_EXPERIMENT.KEY);\n const { variationKey } = decision;\n\n // Experiment specific properties or data should not be sent to the tracking logs, so break this\n // object out to ensure it is only sent to Segment and not the tracking logs.\n const experimentProperties = {\n experiment_key: OPTIMIZELY_VTR_MODAL_EXPERIMENT.KEY,\n variation_key: variationKey,\n };\n\n const upsellPageName = 'course_sequence_modal';\n const eventProperties = {\n org_key: org,\n courserun_key: courseId,\n };\n const promotionEventProperties = {\n creative: 'marketmodalupsell',\n name: 'In-Course Verification Prompt',\n position: 'marketing-modal-message',\n promotion_id: 'courseware_verified_certificate_upsell',\n ...eventProperties,\n ...experimentProperties,\n };\n\n useEffect(() => {\n sendTrackingLogEvent('edx.bi.course.upgrade.marketmodalupsell.displayed', eventProperties);\n sendTrackEvent('Promotion Viewed', promotionEventProperties);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const logClick = () => {\n sendTrackingLogEvent('edx.bi.course.upgrade.marketingmodal.clicked', eventProperties);\n sendTrackingLogEvent('edx.course.enrollment.upgrade.clicked', {\n ...eventProperties,\n location: 'marketing-modal-message',\n });\n sendTrackEvent('Promotion Clicked', promotionEventProperties);\n sendTrackEvent('edx.bi.ecommerce.upsell_links_clicked', {\n ...eventProperties,\n ...experimentProperties,\n linkCategory: 'green_upgrade',\n linkName: `${upsellPageName}_green`,\n linkType: 'button',\n pageName: upsellPageName,\n });\n optimizely.track(OPTIMIZELY_VTR_MODAL_EXPERIMENT.ACTION);\n };\n const logClickPastExpiration = () => {\n sendTrackEvent('edx.bi.ecommerce.upgrade_modal.past_expiration.button_clicked', {\n ...eventProperties,\n ...experimentProperties,\n linkCategory: 'upgrade_modal',\n linkName: `${upsellPageName}_course_details`,\n linkType: 'button',\n pageName: upsellPageName,\n });\n };\n\n const intl = useIntl();\n const dateNow = Date.now();\n const {\n currency, currencySymbol, price, upgradeUrl,\n } = verifiedMode;\n const upgradeDeadlineDate = accessExpiration ? new Date(accessExpiration.upgradeDeadline) : null;\n const pastDeadline = accessExpiration ? new Date(dateNow) > upgradeDeadlineDate : false;\n const modalTitle = intl.formatMessage({\n id: 'learning.upgrade-modal.title',\n defaultMessage: 'Pursue a verified certificate',\n description: 'Upgrade modal title',\n });\n let callToActionButton = (\n <Button\n className=\"w-100\"\n onClick={logClick}\n href={upgradeUrl}\n >\n {intl.formatMessage(\n {\n id: 'learning.upgrade-modal.upgrade-button.label',\n defaultMessage: 'Upgrade for {currencySymbol}{price} {currency}',\n description: 'Label for upgrade button',\n },\n { currency, currencySymbol, price },\n )}\n </Button>\n );\n\n if (pastDeadline) {\n callToActionButton = (\n <Button\n className=\"w-100\"\n onClick={logClickPastExpiration}\n href={marketingUrl}\n >\n {intl.formatMessage(\n {\n id: 'learning.upgrade-modal.upgrade-button.label',\n defaultMessage: 'View course details',\n description: 'Label for upgrade button',\n },\n )}\n </Button>\n );\n }\n\n return (\n <MarketingModal\n title={modalTitle}\n isOpen={isOpen}\n onClose={close}\n isBlocking\n size=\"md\"\n heroIsDark\n heroNode={(\n <ModalDialog.Hero style={{ background: 'linear-gradient(#001B1E, #0E3639)' }}>\n <ModalDialog.Hero.Content className=\"m-0 text-primary-500\">\n {/* TODO: replace with simplified */}\n <CertificatePreview {...{ courseId, bgColor: 'bg-light-100' }} />\n </ModalDialog.Hero.Content>\n </ModalDialog.Hero>\n )}\n footerNode={(\n <ActionRow isStacked>\n {callToActionButton}\n {offer && (\n <div className=\"text-center discount-info\">\n {intl.formatMessage({\n id: 'learning.generic.upgradeNotification.code',\n defaultMessage: 'Use code {code} at checkout',\n values: {\n code: (<span className=\"font-weight-bold\">{offer.code}</span>),\n },\n })}\n </div>\n )}\n </ActionRow>\n )}\n >\n <h2 className=\"h3 mb-3\">\n {modalTitle}\n </h2>\n <div role=\"list\" className=\"pl-2 text-primary-500\">\n <Stack gap={3} role=\"listitem\">\n <Stack direction=\"horizontal\" gap={3}>\n <Icon size=\"md\" src={Check} />\n <span>\n {intl.formatMessage(\n {\n id: 'learning.upgrade-modal.body-list.first-item',\n defaultMessage: 'Earn a {linkedContent} of completion to show case your résumé',\n description: 'Message for first list item',\n },\n {\n linkedContent: (\n <Hyperlink\n className=\"font-weight-bold text-primary-500 inline-link-underline\"\n destination={`${getConfig().MARKETING_SITE_BASE_URL}/verified-certificate`}\n >\n verified certificate\n </Hyperlink>\n ),\n },\n )}\n </span>\n </Stack>\n <Stack direction=\"horizontal\" gap={3} role=\"listitem\">\n <Icon size=\"md\" src={Check} />\n <span>\n {intl.formatMessage(\n {\n id: 'learning.upgrade-modal.body-list.second-item',\n defaultMessage: 'Support our mission at edX.',\n description: 'Message for second list item',\n },\n )}\n </span>\n </Stack>\n </Stack>\n </div>\n </MarketingModal>\n );\n};\n\nUpgradeModal.defaultProps = {\n verifiedMode: {},\n offer: null,\n accessExpiration: null,\n};\nUpgradeModal.propTypes = {\n verifiedMode: PropTypes.shape({\n currency: PropTypes.string.isRequired,\n price: PropTypes.number.isRequired,\n currencySymbol: PropTypes.string.isRequired,\n upgradeUrl: PropTypes.string.isRequired,\n }),\n offer: PropTypes.shape({\n code: PropTypes.string,\n }),\n accessExpiration: PropTypes.shape({\n upgradeDeadline: PropTypes.string,\n }),\n marketingUrl: PropTypes.string.isRequired,\n org: PropTypes.string.isRequired,\n courseId: PropTypes.string.isRequired,\n close: PropTypes.func.isRequired,\n isOpen: PropTypes.bool.isRequired,\n optimizely: PropTypes.node.isRequired,\n};\n\nexport default withOptimizely(UpgradeModal);\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"UpgradeModal.js","names":["_react","require","_propTypes","_interopRequireDefault","_reactSdk","_frontendPlatform","_analytics","_i18n","_paragon","_icons","_data","_certificatePreview","_jsxRuntime","obj","__esModule","default","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","UpgradeModal","_ref","isOpen","close","verifiedMode","org","courseId","offer","marketingUrl","accessExpiration","optimizely","decision","useDecision","OPTIMIZELY_VTR_MODAL_EXPERIMENT","KEY","variationKey","experimentProperties","experiment_key","variation_key","upsellPageName","eventProperties","org_key","courserun_key","promotionEventProperties","creative","name","position","promotion_id","useEffect","sendTrackingLogEvent","sendTrackEvent","logClick","location","linkCategory","linkName","linkType","pageName","track","ACTION","logClickPastExpiration","intl","useIntl","dateNow","Date","now","currencySymbol","price","upgradeUrl","upgradeDeadlineDate","upgradeDeadline","pastDeadline","modalTitle","formatMessage","id","defaultMessage","description","callToActionButton","jsx","Button","className","onClick","href","children","jsxs","MarketingModal","title","onClose","isBlocking","size","heroIsDark","heroNode","ModalDialog","Hero","style","background","borderTopLeftRadius","borderTopRightRadius","Content","bgColor","footerNode","ActionRow","isStacked","values","code","role","Stack","gap","direction","Icon","src","Check","linkedContent","Hyperlink","destination","getConfig","MARKETING_SITE_BASE_URL","defaultProps","propTypes","PropTypes","shape","number","isRequired","string","func","bool","node","_default","exports","withOptimizely"],"sources":["../../src/upgrade-modal/UpgradeModal.jsx"],"sourcesContent":["import { useEffect, React } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDecision, withOptimizely } from '@optimizely/react-sdk';\nimport { getConfig } from '@edx/frontend-platform';\nimport { sendTrackEvent, sendTrackingLogEvent } from '@edx/frontend-platform/analytics';\nimport { useIntl } from '@edx/frontend-platform/i18n';\nimport {\n ActionRow, Button, Hyperlink, Icon, MarketingModal, ModalDialog, Stack,\n} from '@openedx/paragon';\nimport { Check } from '@openedx/paragon/icons';\nimport { OPTIMIZELY_VTR_MODAL_EXPERIMENT } from '../data';\nimport CertificatePreview from '../upgrade-notification/certificate-preview';\n\nconst UpgradeModal = ({\n isOpen,\n close,\n verifiedMode,\n org,\n courseId,\n offer,\n marketingUrl,\n accessExpiration,\n optimizely,\n}) => {\n const [decision] = useDecision(OPTIMIZELY_VTR_MODAL_EXPERIMENT.KEY);\n const { variationKey } = decision;\n\n // Experiment specific properties or data should not be sent to the tracking logs, so break this\n // object out to ensure it is only sent to Segment and not the tracking logs.\n const experimentProperties = {\n experiment_key: OPTIMIZELY_VTR_MODAL_EXPERIMENT.KEY,\n variation_key: variationKey,\n };\n\n const upsellPageName = 'course_sequence_modal';\n const eventProperties = {\n org_key: org,\n courserun_key: courseId,\n };\n const promotionEventProperties = {\n creative: 'marketmodalupsell',\n name: 'In-Course Verification Prompt',\n position: 'marketing-modal-message',\n promotion_id: 'courseware_verified_certificate_upsell',\n ...eventProperties,\n ...experimentProperties,\n };\n\n useEffect(() => {\n sendTrackingLogEvent('edx.bi.course.upgrade.marketmodalupsell.displayed', eventProperties);\n sendTrackEvent('Promotion Viewed', promotionEventProperties);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const logClick = () => {\n sendTrackingLogEvent('edx.bi.course.upgrade.marketingmodal.clicked', eventProperties);\n sendTrackingLogEvent('edx.course.enrollment.upgrade.clicked', {\n ...eventProperties,\n location: 'marketing-modal-message',\n });\n sendTrackEvent('Promotion Clicked', promotionEventProperties);\n sendTrackEvent('edx.bi.ecommerce.upsell_links_clicked', {\n ...eventProperties,\n ...experimentProperties,\n linkCategory: 'green_upgrade',\n linkName: `${upsellPageName}_green`,\n linkType: 'button',\n pageName: upsellPageName,\n });\n optimizely.track(OPTIMIZELY_VTR_MODAL_EXPERIMENT.ACTION);\n };\n const logClickPastExpiration = () => {\n sendTrackEvent('edx.bi.ecommerce.upgrade_modal.past_expiration.button_clicked', {\n ...eventProperties,\n ...experimentProperties,\n linkCategory: 'upgrade_modal',\n linkName: `${upsellPageName}_course_details`,\n linkType: 'button',\n pageName: upsellPageName,\n });\n };\n\n const intl = useIntl();\n const dateNow = Date.now();\n const { currencySymbol, price, upgradeUrl } = verifiedMode;\n const upgradeDeadlineDate = accessExpiration ? new Date(accessExpiration.upgradeDeadline) : null;\n const pastDeadline = accessExpiration ? new Date(dateNow) > upgradeDeadlineDate : false;\n const modalTitle = intl.formatMessage({\n id: 'learning.upgrade-modal.title',\n defaultMessage: 'Pursue a verified certificate',\n description: 'Upgrade modal title',\n });\n let callToActionButton = (\n <Button\n className=\"w-100\"\n onClick={logClick}\n href={upgradeUrl}\n >\n {intl.formatMessage(\n {\n id: 'learning.upgrade-modal.upgrade-button.label',\n defaultMessage: 'Upgrade for {currencySymbol}{price}',\n description: 'Label for upgrade button',\n },\n { currencySymbol, price },\n )}\n </Button>\n );\n\n if (pastDeadline) {\n callToActionButton = (\n <Button\n className=\"w-100\"\n onClick={logClickPastExpiration}\n href={marketingUrl}\n >\n {intl.formatMessage(\n {\n id: 'learning.upgrade-modal.upgrade-button.label',\n defaultMessage: 'View course details',\n description: 'Label for upgrade button',\n },\n )}\n </Button>\n );\n }\n\n return (\n <MarketingModal\n title={modalTitle}\n isOpen={isOpen}\n onClose={close}\n isBlocking\n size=\"md\"\n heroIsDark\n heroNode={(\n <ModalDialog.Hero\n className=\"justify-content-center\"\n style={{\n background: 'linear-gradient(#001B1E, #0E3639)',\n borderTopLeftRadius: '6.8px',\n borderTopRightRadius: '6.8px',\n }}\n >\n <ModalDialog.Hero.Content className=\"m-0 text-primary-500\">\n {/* TODO: replace with simplified */}\n <CertificatePreview {...{ courseId, bgColor: 'bg-light-100' }} />\n </ModalDialog.Hero.Content>\n </ModalDialog.Hero>\n )}\n footerNode={(\n <ActionRow isStacked className=\"mb-2\">\n {callToActionButton}\n {offer && (\n <div className=\"text-center discount-info\">\n {intl.formatMessage({\n id: 'learning.generic.upgradeNotification.code',\n defaultMessage: 'Use code {code} at checkout',\n values: {\n code: (<span className=\"font-weight-bold\">{offer.code}</span>),\n },\n })}\n </div>\n )}\n </ActionRow>\n )}\n >\n <h2 className=\"h3 mb-3 mt-2.5\">\n {modalTitle}\n </h2>\n <div role=\"list\" className=\"pl-2 text-gray-700\">\n <Stack gap={3} role=\"listitem\">\n <Stack direction=\"horizontal\" gap={3} className=\"align-items-start\">\n <Icon size=\"md\" src={Check} />\n <span>\n {intl.formatMessage(\n {\n id: 'learning.upgrade-modal.body-list.first-item',\n defaultMessage: 'Earn a {linkedContent} of completion to showcase your résumé',\n description: 'Message for first list item',\n },\n {\n linkedContent: (\n <Hyperlink\n className=\"font-weight-bold text-primary-500 inline-link-underline\"\n destination={`${getConfig().MARKETING_SITE_BASE_URL}/verified-certificate`}\n >\n verified certificate\n </Hyperlink>\n ),\n },\n )}\n </span>\n </Stack>\n <Stack direction=\"horizontal\" gap={3} role=\"listitem\">\n <Icon size=\"md\" src={Check} />\n <span>\n {intl.formatMessage(\n {\n id: 'learning.upgrade-modal.body-list.second-item',\n defaultMessage: 'Support our mission at edX',\n description: 'Message for second list item',\n },\n )}\n </span>\n </Stack>\n </Stack>\n </div>\n </MarketingModal>\n );\n};\n\nUpgradeModal.defaultProps = {\n verifiedMode: {},\n offer: null,\n accessExpiration: null,\n};\nUpgradeModal.propTypes = {\n verifiedMode: PropTypes.shape({\n price: PropTypes.number.isRequired,\n currencySymbol: PropTypes.string.isRequired,\n upgradeUrl: PropTypes.string.isRequired,\n }),\n offer: PropTypes.shape({\n code: PropTypes.string,\n }),\n accessExpiration: PropTypes.shape({\n upgradeDeadline: PropTypes.string,\n }),\n marketingUrl: PropTypes.string.isRequired,\n org: PropTypes.string.isRequired,\n courseId: PropTypes.string.isRequired,\n close: PropTypes.func.isRequired,\n isOpen: PropTypes.bool.isRequired,\n optimizely: PropTypes.node.isRequired,\n};\n\nexport default withOptimizely(UpgradeModal);\n"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  .certificate-preview {
4
4
  border-radius: 6px;
5
5
  position: relative;
6
+ line-height: 1em;
6
7
  }
7
8
 
8
9
  .course-outline-tab {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@edx/frontend-plugin-advertisements",
3
- "version": "1.23.0",
3
+ "version": "1.23.2",
4
4
  "description": "Frontend plugin for edX in course advertisements",
5
5
  "main": "dist/index.js",
6
6
  "repository": {