@edx/frontend-plugin-advertisements 1.29.2 → 1.30.0
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/dist/data/index.js +6 -6
- package/dist/data/index.js.map +1 -1
- package/dist/data/optimizely.js +7 -6
- package/dist/data/optimizely.js.map +1 -1
- package/dist/generic/index.js +13 -0
- package/dist/generic/index.js.map +1 -1
- package/dist/generic/upsell-bullets/index.js +15 -0
- package/dist/generic/upsell-bullets/index.js.map +1 -1
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -1
- package/dist/optimizely/utils.js +6 -20
- package/dist/optimizely/utils.js.map +1 -1
- package/dist/upgrade-modal/BaseModal.js +1 -1
- package/dist/upgrade-modal/BaseModal.js.map +1 -1
- package/dist/upgrade-modal/ExperimentalUpgradeModal.js +18 -5
- package/dist/upgrade-modal/ExperimentalUpgradeModal.js.map +1 -1
- package/dist/upgrade-notification/ExperimentalUpgradeNotification.js +10 -5
- package/dist/upgrade-notification/ExperimentalUpgradeNotification.js.map +1 -1
- package/dist/upgrade-notification/UpgradeNotification.js +1 -1
- package/dist/upgrade-notification/UpgradeNotification.js.map +1 -1
- package/package.json +1 -1
package/dist/data/index.js
CHANGED
|
@@ -9,22 +9,22 @@ Object.defineProperty(exports, "OPTIMIZELY_EVENT_KEYS", {
|
|
|
9
9
|
return _optimizely.OPTIMIZELY_EVENT_KEYS;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
-
Object.defineProperty(exports, "
|
|
12
|
+
Object.defineProperty(exports, "OPTIMIZELY_VTR_BULLET_EXPERIMENT", {
|
|
13
13
|
enumerable: true,
|
|
14
14
|
get: function () {
|
|
15
|
-
return _optimizely.
|
|
15
|
+
return _optimizely.OPTIMIZELY_VTR_BULLET_EXPERIMENT;
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
|
-
Object.defineProperty(exports, "
|
|
18
|
+
Object.defineProperty(exports, "OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_KEY", {
|
|
19
19
|
enumerable: true,
|
|
20
20
|
get: function () {
|
|
21
|
-
return _optimizely.
|
|
21
|
+
return _optimizely.OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_KEY;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
-
Object.defineProperty(exports, "
|
|
24
|
+
Object.defineProperty(exports, "OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_VARIATION_KEYS", {
|
|
25
25
|
enumerable: true,
|
|
26
26
|
get: function () {
|
|
27
|
-
return _optimizely.
|
|
27
|
+
return _optimizely.OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_VARIATION_KEYS;
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
30
|
Object.defineProperty(exports, "getOptimizely", {
|
package/dist/data/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_optimizely","require"],"sources":["../../src/data/index.jsx"],"sourcesContent":["export {\n getOptimizely,\n OPTIMIZELY_EVENT_KEYS,\n OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_VARIATION_KEYS,\n OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_KEY,\n
|
|
1
|
+
{"version":3,"file":"index.js","names":["_optimizely","require"],"sources":["../../src/data/index.jsx"],"sourcesContent":["export {\n getOptimizely,\n OPTIMIZELY_EVENT_KEYS,\n OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_VARIATION_KEYS,\n OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_KEY,\n OPTIMIZELY_VTR_BULLET_EXPERIMENT,\n} from './optimizely';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,WAAA,GAAAC,OAAA","ignoreList":[]}
|
package/dist/data/optimizely.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.getOptimizely = exports.
|
|
6
|
+
exports.getOptimizely = exports.OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_VARIATION_KEYS = exports.OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_KEY = exports.OPTIMIZELY_VTR_BULLET_EXPERIMENT = exports.OPTIMIZELY_EVENT_KEYS = void 0;
|
|
7
7
|
var _reactSdk = require("@optimizely/react-sdk");
|
|
8
8
|
var _frontendPlatform = require("@edx/frontend-platform");
|
|
9
9
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
@@ -41,14 +41,15 @@ const OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_VARIATION_KEYS = exports.OPTIMIZELY_
|
|
|
41
41
|
CONTROL: 'control',
|
|
42
42
|
OFF: 'off'
|
|
43
43
|
};
|
|
44
|
-
const
|
|
44
|
+
const OPTIMIZELY_VTR_BULLET_EXPERIMENT = exports.OPTIMIZELY_VTR_BULLET_EXPERIMENT = {
|
|
45
45
|
KEY: 'cta_bullet_points_experiment',
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
ANY_CLICK_ACTION: 'upgrade_button_click',
|
|
47
|
+
MODAL_CLICK_ACTION: 'modal_upgrade_button_click',
|
|
48
|
+
SIDEBAR_CLICK_ACTION: 'sidebar_upgrade_button_click',
|
|
48
49
|
VARIATIONS: {
|
|
49
50
|
OFF: 'off',
|
|
50
|
-
|
|
51
|
-
|
|
51
|
+
CONTROL: 'control',
|
|
52
|
+
EXPERIMENT: 'new_experience'
|
|
52
53
|
}
|
|
53
54
|
};
|
|
54
55
|
const OPTIMIZELY_EVENT_KEYS = exports.OPTIMIZELY_EVENT_KEYS = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"optimizely.js","names":["_reactSdk","require","_frontendPlatform","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ensureConfig","DEFAULT_OPTIMIZELY_AGENT_CONFIG","eventFlushInterval","eventBatchSize","instance","getOptimizely","OPTIMIZELY_SDK_KEY","getConfig","OPTIMIZELY_FULL_STACK_SDK_KEY","OPTIMIZELY_AGENT_CONFIG","createInstance","sdkKey","exports","OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_KEY","OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_VARIATION_KEYS","CERTIFICATE_PREVIEW","CERTIFICATE_PREVIEW_WITH_COPY","CONTROL","OFF","
|
|
1
|
+
{"version":3,"file":"optimizely.js","names":["_reactSdk","require","_frontendPlatform","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ensureConfig","DEFAULT_OPTIMIZELY_AGENT_CONFIG","eventFlushInterval","eventBatchSize","instance","getOptimizely","OPTIMIZELY_SDK_KEY","getConfig","OPTIMIZELY_FULL_STACK_SDK_KEY","OPTIMIZELY_AGENT_CONFIG","createInstance","sdkKey","exports","OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_KEY","OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_VARIATION_KEYS","CERTIFICATE_PREVIEW","CERTIFICATE_PREVIEW_WITH_COPY","CONTROL","OFF","OPTIMIZELY_VTR_BULLET_EXPERIMENT","KEY","ANY_CLICK_ACTION","MODAL_CLICK_ACTION","SIDEBAR_CLICK_ACTION","VARIATIONS","EXPERIMENT","OPTIMIZELY_EVENT_KEYS","UPGRADE_BUTTON_CLICK","DECLINE_UPGRADE_BUTTON_CLICK"],"sources":["../../src/data/optimizely.js"],"sourcesContent":["import { createInstance } from '@optimizely/react-sdk';\nimport { ensureConfig, getConfig } from '@edx/frontend-platform';\n\nensureConfig([\n 'OPTIMIZELY_FULL_STACK_SDK_KEY',\n], 'Frontend Plugin Advertisements Optimizely module');\n\nconst DEFAULT_OPTIMIZELY_AGENT_CONFIG = {\n eventFlushInterval: 1000,\n eventBatchSize: 10,\n};\n\n/**\n * Initializing the Optimizely instance at the top-level will not work, becaused it may be initialized before\n * the OPTIMIZELY_FULL_STACK_SDK_KEY is available and will not be reinitialized afterward. Wrapping the initialization\n * in a function allows components to request the instance as-needed.\n */\nlet instance = null;\nconst getOptimizely = () => {\n const OPTIMIZELY_SDK_KEY = getConfig().OPTIMIZELY_FULL_STACK_SDK_KEY;\n const OPTIMIZELY_AGENT_CONFIG = getConfig().OPTIMIZELY_AGENT_CONFIG || {};\n\n if (!instance && OPTIMIZELY_SDK_KEY) {\n instance = createInstance({\n sdkKey: OPTIMIZELY_SDK_KEY,\n ...{\n ...DEFAULT_OPTIMIZELY_AGENT_CONFIG,\n ...OPTIMIZELY_AGENT_CONFIG,\n },\n });\n }\n\n return instance;\n};\n\nconst OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_KEY = 'verified_take_rate_preview_watermark_experimentation';\n\nconst OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_VARIATION_KEYS = {\n CERTIFICATE_PREVIEW: 'certificate_preview',\n CERTIFICATE_PREVIEW_WITH_COPY: 'certificate_preview_with_copy',\n CONTROL: 'control',\n OFF: 'off',\n};\n\nconst OPTIMIZELY_VTR_BULLET_EXPERIMENT = {\n KEY: 'cta_bullet_points_experiment',\n ANY_CLICK_ACTION: 'upgrade_button_click',\n MODAL_CLICK_ACTION: 'modal_upgrade_button_click',\n SIDEBAR_CLICK_ACTION: 'sidebar_upgrade_button_click',\n VARIATIONS: {\n OFF: 'off',\n CONTROL: 'control',\n EXPERIMENT: 'new_experience',\n },\n};\n\nconst OPTIMIZELY_EVENT_KEYS = {\n UPGRADE_BUTTON_CLICK: 'upgrade_button_click',\n DECLINE_UPGRADE_BUTTON_CLICK: 'decline_upgrade_button_click',\n};\n\nexport {\n getOptimizely,\n OPTIMIZELY_EVENT_KEYS,\n OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_KEY,\n OPTIMIZELY_VTR_COPY_CHANGE_EXPERIMENT_VARIATION_KEYS,\n OPTIMIZELY_VTR_BULLET_EXPERIMENT,\n};\n"],"mappings":"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","ignoreList":[]}
|
package/dist/generic/index.js
CHANGED
|
@@ -9,6 +9,18 @@ Object.defineProperty(exports, "AccessExpirationDateBanner", {
|
|
|
9
9
|
return _AccessExpirationDateBanner.default;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
Object.defineProperty(exports, "ExperimentalUpsellBullets", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _upsellBullets.ExperimentalUpsellBullets;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "ExperimentalUpsellTable", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _upsellBullets.ExperimentalUpsellTable;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
12
24
|
Object.defineProperty(exports, "ExpirationCountdown", {
|
|
13
25
|
enumerable: true,
|
|
14
26
|
get: function () {
|
|
@@ -45,5 +57,6 @@ var _PastExpirationDateBanner = _interopRequireDefault(require("./PastExpiration
|
|
|
45
57
|
var _PastExpirationCardContent = _interopRequireDefault(require("./PastExpirationCardContent"));
|
|
46
58
|
var _UpsellFarAwayCardContent = _interopRequireDefault(require("./UpsellFarAwayCardContent"));
|
|
47
59
|
var _UpsellFBESoonCardContent = _interopRequireDefault(require("./UpsellFBESoonCardContent"));
|
|
60
|
+
var _upsellBullets = require("./upsell-bullets");
|
|
48
61
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
49
62
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_ExpirationCountdown","_interopRequireDefault","require","_AccessExpirationDateBanner","_PastExpirationDateBanner","_PastExpirationCardContent","_UpsellFarAwayCardContent","_UpsellFBESoonCardContent","obj","__esModule","default"],"sources":["../../src/generic/index.jsx"],"sourcesContent":["import ExpirationCountdown from './ExpirationCountdown';\nimport AccessExpirationDateBanner from './AccessExpirationDateBanner';\nimport PastExpirationDateBanner from './PastExpirationDateBanner';\nimport PastExpirationCardContent from './PastExpirationCardContent';\nimport UpsellFarAwayCardContent from './UpsellFarAwayCardContent';\nimport UpsellFBESoonCardContent from './UpsellFBESoonCardContent';\n\nexport {\n ExpirationCountdown,\n AccessExpirationDateBanner,\n PastExpirationDateBanner,\n PastExpirationCardContent,\n UpsellFarAwayCardContent,\n UpsellFBESoonCardContent,\n};\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["_ExpirationCountdown","_interopRequireDefault","require","_AccessExpirationDateBanner","_PastExpirationDateBanner","_PastExpirationCardContent","_UpsellFarAwayCardContent","_UpsellFBESoonCardContent","_upsellBullets","obj","__esModule","default"],"sources":["../../src/generic/index.jsx"],"sourcesContent":["import ExpirationCountdown from './ExpirationCountdown';\nimport AccessExpirationDateBanner from './AccessExpirationDateBanner';\nimport PastExpirationDateBanner from './PastExpirationDateBanner';\nimport PastExpirationCardContent from './PastExpirationCardContent';\nimport UpsellFarAwayCardContent from './UpsellFarAwayCardContent';\nimport UpsellFBESoonCardContent from './UpsellFBESoonCardContent';\nimport { ExperimentalUpsellBullets, ExperimentalUpsellTable } from './upsell-bullets';\n\nexport {\n ExpirationCountdown,\n AccessExpirationDateBanner,\n PastExpirationDateBanner,\n PastExpirationCardContent,\n UpsellFarAwayCardContent,\n UpsellFBESoonCardContent,\n ExperimentalUpsellBullets,\n ExperimentalUpsellTable,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,oBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,2BAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,yBAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,0BAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,yBAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,yBAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,cAAA,GAAAN,OAAA;AAAsF,SAAAD,uBAAAQ,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA","ignoreList":[]}
|
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
+
Object.defineProperty(exports, "ExperimentalUpsellBullets", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _ExperimentalUpsellBullets.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "ExperimentalUpsellTable", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _ExperimentalUpsellTable.default;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
6
18
|
Object.defineProperty(exports, "FullAccessBullet", {
|
|
7
19
|
enumerable: true,
|
|
8
20
|
get: function () {
|
|
@@ -28,4 +40,7 @@ Object.defineProperty(exports, "VerifiedCertBullet", {
|
|
|
28
40
|
}
|
|
29
41
|
});
|
|
30
42
|
var _UpsellBullets = require("./UpsellBullets");
|
|
43
|
+
var _ExperimentalUpsellBullets = _interopRequireDefault(require("./ExperimentalUpsellBullets"));
|
|
44
|
+
var _ExperimentalUpsellTable = _interopRequireDefault(require("./ExperimentalUpsellTable"));
|
|
45
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
31
46
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_UpsellBullets","require"],"sources":["../../../src/generic/upsell-bullets/index.jsx"],"sourcesContent":["export {\n VerifiedCertBullet,\n UnlockGradedBullet,\n FullAccessBullet,\n SupportMissionBullet,\n} from './UpsellBullets';\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["_UpsellBullets","require","_ExperimentalUpsellBullets","_interopRequireDefault","_ExperimentalUpsellTable","obj","__esModule","default"],"sources":["../../../src/generic/upsell-bullets/index.jsx"],"sourcesContent":["export {\n VerifiedCertBullet,\n UnlockGradedBullet,\n FullAccessBullet,\n SupportMissionBullet,\n} from './UpsellBullets';\nexport { default as ExperimentalUpsellBullets } from './ExperimentalUpsellBullets';\nexport { default as ExperimentalUpsellTable } from './ExperimentalUpsellTable';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AAMA,IAAAC,0BAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,wBAAA,GAAAD,sBAAA,CAAAF,OAAA;AAA+E,SAAAE,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA","ignoreList":[]}
|
package/dist/index.js
CHANGED
|
@@ -21,8 +21,15 @@ Object.defineProperty(exports, "UpgradeNotification", {
|
|
|
21
21
|
return _upgradeNotification.default;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
+
Object.defineProperty(exports, "UpsellFarAwayCardContent", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _generic.UpsellFarAwayCardContent;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
24
30
|
var _upgradeNotification = _interopRequireDefault(require("./upgrade-notification"));
|
|
25
31
|
var _paywall = _interopRequireDefault(require("./paywall"));
|
|
26
32
|
var _upgradeModal = _interopRequireDefault(require("./upgrade-modal"));
|
|
33
|
+
var _generic = require("./generic");
|
|
27
34
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
28
35
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["_upgradeNotification","_interopRequireDefault","require","_paywall","_upgradeModal","obj","__esModule","default"],"sources":["../src/index.jsx"],"sourcesContent":["import UpgradeNotification from './upgrade-notification';\nimport LockPaywall from './paywall';\nimport NextUnitButton from './upgrade-modal';\n\nexport {\n UpgradeNotification,\n LockPaywall,\n NextUnitButton,\n};\n"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","names":["_upgradeNotification","_interopRequireDefault","require","_paywall","_upgradeModal","_generic","obj","__esModule","default"],"sources":["../src/index.jsx"],"sourcesContent":["import UpgradeNotification from './upgrade-notification';\nimport LockPaywall from './paywall';\nimport NextUnitButton from './upgrade-modal';\nimport { UpsellFarAwayCardContent } from './generic';\n\nexport {\n UpgradeNotification,\n LockPaywall,\n NextUnitButton,\n UpsellFarAwayCardContent,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,oBAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,aAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAAqD,SAAAD,uBAAAK,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA","ignoreList":[]}
|
package/dist/optimizely/utils.js
CHANGED
|
@@ -5,35 +5,21 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
7
|
var _data = require("../data");
|
|
8
|
-
var _ExperimentalUpsellTable = _interopRequireDefault(require("../generic/upsell-bullets/ExperimentalUpsellTable"));
|
|
9
|
-
var _ExperimentalUpsellBullets = _interopRequireDefault(require("../generic/upsell-bullets/ExperimentalUpsellBullets"));
|
|
10
8
|
var _generic = require("../generic");
|
|
11
9
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
10
|
const getBulletVariation = _ref => {
|
|
14
11
|
let {
|
|
15
12
|
isFBE,
|
|
16
13
|
variationKey,
|
|
17
|
-
enabled
|
|
14
|
+
enabled,
|
|
15
|
+
enabledVariation
|
|
18
16
|
} = _ref;
|
|
19
17
|
const {
|
|
20
18
|
VARIATIONS
|
|
21
|
-
} = _data.
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExperimentalUpsellTable.default, {
|
|
26
|
-
isFBE
|
|
27
|
-
});
|
|
28
|
-
case VARIATIONS.BULLETS:
|
|
29
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ExperimentalUpsellBullets.default, {
|
|
30
|
-
isFBE
|
|
31
|
-
});
|
|
32
|
-
default:
|
|
33
|
-
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_generic.UpsellFarAwayCardContent, {
|
|
34
|
-
isFBE
|
|
35
|
-
});
|
|
36
|
-
}
|
|
19
|
+
} = _data.OPTIMIZELY_VTR_BULLET_EXPERIMENT;
|
|
20
|
+
const showTestVariation = enabled && variationKey === VARIATIONS.EXPERIMENT;
|
|
21
|
+
if (showTestVariation) {
|
|
22
|
+
return enabledVariation;
|
|
37
23
|
}
|
|
38
24
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_generic.UpsellFarAwayCardContent, {
|
|
39
25
|
isFBE
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","names":["_data","require","
|
|
1
|
+
{"version":3,"file":"utils.js","names":["_data","require","_generic","_jsxRuntime","getBulletVariation","_ref","isFBE","variationKey","enabled","enabledVariation","VARIATIONS","OPTIMIZELY_VTR_BULLET_EXPERIMENT","showTestVariation","EXPERIMENT","jsx","UpsellFarAwayCardContent","_default","exports","default"],"sources":["../../src/optimizely/utils.jsx"],"sourcesContent":["import { OPTIMIZELY_VTR_BULLET_EXPERIMENT } from '../data';\n\nimport {\n UpsellFarAwayCardContent,\n} from '../generic';\n\nconst getBulletVariation = ({\n isFBE,\n variationKey,\n enabled,\n enabledVariation,\n}) => {\n const { VARIATIONS } = OPTIMIZELY_VTR_BULLET_EXPERIMENT;\n const showTestVariation = enabled && variationKey === VARIATIONS.EXPERIMENT;\n\n if (showTestVariation) {\n return enabledVariation;\n }\n\n return <UpsellFarAwayCardContent {...{ isFBE }} />;\n};\n\nexport default getBulletVariation;\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAD,OAAA;AAEoB,IAAAE,WAAA,GAAAF,OAAA;AAEpB,MAAMG,kBAAkB,GAAGC,IAAA,IAKrB;EAAA,IALsB;IAC1BC,KAAK;IACLC,YAAY;IACZC,OAAO;IACPC;EACF,CAAC,GAAAJ,IAAA;EACC,MAAM;IAAEK;EAAW,CAAC,GAAGC,sCAAgC;EACvD,MAAMC,iBAAiB,GAAGJ,OAAO,IAAID,YAAY,KAAKG,UAAU,CAACG,UAAU;EAE3E,IAAID,iBAAiB,EAAE;IACrB,OAAOH,gBAAgB;EACzB;EAEA,oBAAO,IAAAN,WAAA,CAAAW,GAAA,EAACZ,QAAA,CAAAa,wBAAwB;IAAOT;EAAK,CAAK,CAAC;AACpD,CAAC;AAAC,IAAAU,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEad,kBAAkB","ignoreList":[]}
|
|
@@ -28,7 +28,7 @@ const BaseModal = _ref => {
|
|
|
28
28
|
defaultMessage: 'Pursue a verified certificate',
|
|
29
29
|
description: 'Upgrade modal title'
|
|
30
30
|
});
|
|
31
|
-
const isTableVariation = variationKey === _data.
|
|
31
|
+
const isTableVariation = variationKey === _data.OPTIMIZELY_VTR_BULLET_EXPERIMENT.VARIATIONS.EXPERIMENT;
|
|
32
32
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_paragon.MarketingModal, {
|
|
33
33
|
title: title,
|
|
34
34
|
isOpen: isOpen,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseModal.js","names":["_react","_interopRequireDefault","require","_propTypes","_i18n","_paragon","_certificatePreview","_data","_jsxRuntime","obj","__esModule","default","BaseModal","_ref","isOpen","close","courseId","offer","callToActionButton","variationKey","children","intl","useIntl","title","formatMessage","id","defaultMessage","description","isTableVariation","
|
|
1
|
+
{"version":3,"file":"BaseModal.js","names":["_react","_interopRequireDefault","require","_propTypes","_i18n","_paragon","_certificatePreview","_data","_jsxRuntime","obj","__esModule","default","BaseModal","_ref","isOpen","close","courseId","offer","callToActionButton","variationKey","children","intl","useIntl","title","formatMessage","id","defaultMessage","description","isTableVariation","OPTIMIZELY_VTR_BULLET_EXPERIMENT","VARIATIONS","EXPERIMENT","jsxs","MarketingModal","onClose","isBlocking","size","heroIsDark","heroNode","jsx","ModalDialog","Hero","className","style","background","borderTopLeftRadius","borderTopRightRadius","Content","bgColor","footerNode","ActionRow","isStacked","values","code","defaultProps","propTypes","PropTypes","shape","string","isRequired","func","bool","node","_default","exports"],"sources":["../../src/upgrade-modal/BaseModal.jsx"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { useIntl } from '@edx/frontend-platform/i18n';\nimport { ActionRow, MarketingModal, ModalDialog } from '@openedx/paragon';\nimport CertificatePreview from '../upgrade-notification/certificate-preview';\nimport { OPTIMIZELY_VTR_BULLET_EXPERIMENT } from '../data';\n\nconst BaseModal = ({\n isOpen,\n close,\n courseId,\n offer,\n callToActionButton,\n variationKey,\n children,\n}) => {\n const intl = useIntl();\n const title = intl.formatMessage({\n id: 'learning.upgrade-modal.title',\n defaultMessage: 'Pursue a verified certificate',\n description: 'Upgrade modal title',\n });\n\n const isTableVariation = variationKey === OPTIMIZELY_VTR_BULLET_EXPERIMENT.VARIATIONS.EXPERIMENT;\n\n return (\n <MarketingModal\n title={title}\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 <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 {!isTableVariation && title}\n </h2>\n <div className={isTableVariation ? 'mx-n4' : 'ml-n4'}>\n {children}\n </div>\n </MarketingModal>\n );\n};\n\nBaseModal.defaultProps = {\n offer: null,\n};\n\nBaseModal.propTypes = {\n offer: PropTypes.shape({\n code: PropTypes.string,\n }),\n variationKey: PropTypes.string.isRequired,\n courseId: PropTypes.string.isRequired,\n close: PropTypes.func.isRequired,\n isOpen: PropTypes.bool.isRequired,\n callToActionButton: PropTypes.node.isRequired,\n children: PropTypes.node.isRequired,\n};\n\nexport default BaseModal;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
var _react =
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
9
|
var _reactSdk = require("@optimizely/react-sdk");
|
|
10
10
|
var _analytics = require("@edx/frontend-platform/analytics");
|
|
@@ -14,8 +14,11 @@ var _upgradeButton = require("@src/generic/upgrade-button");
|
|
|
14
14
|
var _utils = _interopRequireDefault(require("../optimizely/utils"));
|
|
15
15
|
var _data = require("../data");
|
|
16
16
|
var _BaseModal = _interopRequireDefault(require("./BaseModal"));
|
|
17
|
+
var _generic = require("../generic");
|
|
17
18
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
19
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
20
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
21
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
19
22
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
20
23
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
21
24
|
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
@@ -36,8 +39,9 @@ const ExperimentalUpgradeModal = _ref => {
|
|
|
36
39
|
} = _ref;
|
|
37
40
|
const {
|
|
38
41
|
KEY: experimentKey,
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
ANY_CLICK_ACTION,
|
|
43
|
+
MODAL_CLICK_ACTION
|
|
44
|
+
} = _data.OPTIMIZELY_VTR_BULLET_EXPERIMENT;
|
|
41
45
|
const [decision] = (0, _reactSdk.useDecision)(experimentKey);
|
|
42
46
|
const {
|
|
43
47
|
variationKey,
|
|
@@ -61,6 +65,11 @@ const ExperimentalUpgradeModal = _ref => {
|
|
|
61
65
|
position: 'marketing-modal-message',
|
|
62
66
|
promotion_id: 'courseware_verified_certificate_upsell'
|
|
63
67
|
}, eventProperties), experimentProperties);
|
|
68
|
+
(0, _react.useEffect)(() => {
|
|
69
|
+
(0, _analytics.sendTrackingLogEvent)('edx.bi.course.upgrade.marketmodalupsell.displayed', eventProperties);
|
|
70
|
+
(0, _analytics.sendTrackEvent)('Promotion Viewed', promotionEventProperties);
|
|
71
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
72
|
+
}, []);
|
|
64
73
|
const logClick = () => {
|
|
65
74
|
(0, _analytics.sendTrackingLogEvent)('edx.bi.course.upgrade.marketingmodal.clicked', eventProperties);
|
|
66
75
|
(0, _analytics.sendTrackingLogEvent)('edx.course.enrollment.upgrade.clicked', _objectSpread(_objectSpread({}, eventProperties), {}, {
|
|
@@ -73,7 +82,8 @@ const ExperimentalUpgradeModal = _ref => {
|
|
|
73
82
|
linkType: 'button',
|
|
74
83
|
pageName: upsellPageName
|
|
75
84
|
}));
|
|
76
|
-
optimizely.track(
|
|
85
|
+
optimizely.track(ANY_CLICK_ACTION);
|
|
86
|
+
optimizely.track(MODAL_CLICK_ACTION);
|
|
77
87
|
};
|
|
78
88
|
const logClickPastExpiration = () => {
|
|
79
89
|
(0, _analytics.sendTrackEvent)('edx.bi.ecommerce.upgrade_modal.past_expiration.button_clicked', _objectSpread(_objectSpread(_objectSpread({}, eventProperties), experimentProperties), {}, {
|
|
@@ -91,7 +101,10 @@ const ExperimentalUpgradeModal = _ref => {
|
|
|
91
101
|
const upsellMessage = (0, _utils.default)({
|
|
92
102
|
enabled,
|
|
93
103
|
variationKey,
|
|
94
|
-
isFBE
|
|
104
|
+
isFBE,
|
|
105
|
+
enabledVariation: /*#__PURE__*/(0, _jsxRuntime.jsx)(_generic.ExperimentalUpsellTable, {
|
|
106
|
+
isFBE
|
|
107
|
+
})
|
|
95
108
|
});
|
|
96
109
|
let callToActionButton = /*#__PURE__*/(0, _jsxRuntime.jsx)(_upgradeButton.UpgradeButton, {
|
|
97
110
|
offer: offer,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExperimentalUpgradeModal.js","names":["_react","_interopRequireDefault","require","_propTypes","_reactSdk","_analytics","_i18n","_paragon","_upgradeButton","_utils","_data","_BaseModal","_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","ExperimentalUpgradeModal","_ref","isOpen","close","verifiedMode","org","courseId","offer","marketingUrl","accessExpiration","datesBannerInfo","optimizely","KEY","experimentKey","SECONDARY_ACTION","OPTIMIZELY_VTR_SIDEBAR_EXPERIMENT","decision","useDecision","variationKey","enabled","experimentProperties","experiment_key","variation_key","upsellPageName","eventProperties","org_key","courserun_key","promotionEventProperties","creative","name","position","promotion_id","logClick","sendTrackingLogEvent","location","sendTrackEvent","linkCategory","linkName","linkType","pageName","track","logClickPastExpiration","intl","useIntl","dateNow","Date","now","upgradeDeadlineDate","upgradeDeadline","pastDeadline","isFBE","contentTypeGatingEnabled","upsellMessage","getBulletVariation","callToActionButton","jsx","UpgradeButton","onClick","block","Button","className","href","children","formatMessage","id","defaultMessage","description","defaultProps","propTypes","PropTypes","shape","price","number","isRequired","currencySymbol","string","upgradeUrl","code","bool","func","object","_default","exports","withOptimizely"],"sources":["../../src/upgrade-modal/ExperimentalUpgradeModal.jsx"],"sourcesContent":["/* eslint import/no-unresolved: 0 */\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport { useDecision, withOptimizely } from '@optimizely/react-sdk';\nimport { sendTrackEvent, sendTrackingLogEvent } from '@edx/frontend-platform/analytics';\nimport { useIntl } from '@edx/frontend-platform/i18n';\nimport { Button } from '@openedx/paragon';\n\nimport { UpgradeButton } from '@src/generic/upgrade-button';\nimport getBulletVariation from '../optimizely/utils';\nimport { OPTIMIZELY_VTR_SIDEBAR_EXPERIMENT } from '../data';\nimport BaseModal from './BaseModal';\n\nconst ExperimentalUpgradeModal = ({\n isOpen,\n close,\n verifiedMode,\n org,\n courseId,\n offer,\n marketingUrl,\n accessExpiration,\n datesBannerInfo,\n optimizely,\n}) => {\n const { KEY: experimentKey, SECONDARY_ACTION } = OPTIMIZELY_VTR_SIDEBAR_EXPERIMENT;\n\n const [decision] = useDecision(experimentKey);\n const { variationKey, enabled } = 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: experimentKey,\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 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(SECONDARY_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 upgradeDeadlineDate = accessExpiration ? new Date(accessExpiration.upgradeDeadline) : null;\n const pastDeadline = accessExpiration ? new Date(dateNow) > upgradeDeadlineDate : false;\n const isFBE = !!accessExpiration && !!datesBannerInfo?.contentTypeGatingEnabled;\n const upsellMessage = getBulletVariation({ enabled, variationKey, isFBE });\n\n let callToActionButton = (\n <UpgradeButton\n offer={offer}\n onClick={logClick}\n verifiedMode={verifiedMode}\n block\n />\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 <BaseModal\n {...{\n isOpen,\n close,\n courseId,\n offer,\n callToActionButton,\n variationKey,\n }}\n >\n {upsellMessage}\n </BaseModal>\n );\n};\n\nExperimentalUpgradeModal.defaultProps = {\n verifiedMode: {},\n offer: null,\n accessExpiration: null,\n datesBannerInfo: null,\n};\nExperimentalUpgradeModal.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 datesBannerInfo: PropTypes.shape({\n contentTypeGatingEnabled: PropTypes.bool,\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 /* eslint-disable-next-line react/forbid-prop-types */\n optimizely: PropTypes.object.isRequired,\n};\n\nexport default withOptimizely(ExperimentalUpgradeModal);\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ExperimentalUpgradeModal.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_reactSdk","_analytics","_i18n","_paragon","_upgradeButton","_utils","_data","_BaseModal","_generic","_jsxRuntime","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","ExperimentalUpgradeModal","_ref","isOpen","close","verifiedMode","org","courseId","offer","marketingUrl","accessExpiration","datesBannerInfo","optimizely","KEY","experimentKey","ANY_CLICK_ACTION","MODAL_CLICK_ACTION","OPTIMIZELY_VTR_BULLET_EXPERIMENT","decision","useDecision","variationKey","enabled","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","logClickPastExpiration","intl","useIntl","dateNow","Date","now","upgradeDeadlineDate","upgradeDeadline","pastDeadline","isFBE","contentTypeGatingEnabled","upsellMessage","getBulletVariation","enabledVariation","jsx","ExperimentalUpsellTable","callToActionButton","UpgradeButton","onClick","block","Button","className","href","children","formatMessage","id","defaultMessage","description","defaultProps","propTypes","PropTypes","shape","price","number","isRequired","currencySymbol","string","upgradeUrl","code","bool","func","object","_default","exports","withOptimizely"],"sources":["../../src/upgrade-modal/ExperimentalUpgradeModal.jsx"],"sourcesContent":["/* eslint import/no-unresolved: 0 */\nimport React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport { useDecision, withOptimizely } from '@optimizely/react-sdk';\nimport { sendTrackEvent, sendTrackingLogEvent } from '@edx/frontend-platform/analytics';\nimport { useIntl } from '@edx/frontend-platform/i18n';\nimport { Button } from '@openedx/paragon';\n\nimport { UpgradeButton } from '@src/generic/upgrade-button';\nimport getBulletVariation from '../optimizely/utils';\nimport { OPTIMIZELY_VTR_BULLET_EXPERIMENT } from '../data';\nimport BaseModal from './BaseModal';\nimport { ExperimentalUpsellTable } from '../generic';\n\nconst ExperimentalUpgradeModal = ({\n isOpen,\n close,\n verifiedMode,\n org,\n courseId,\n offer,\n marketingUrl,\n accessExpiration,\n datesBannerInfo,\n optimizely,\n}) => {\n const {\n KEY: experimentKey,\n ANY_CLICK_ACTION,\n MODAL_CLICK_ACTION,\n } = OPTIMIZELY_VTR_BULLET_EXPERIMENT;\n const [decision] = useDecision(experimentKey);\n const { variationKey, enabled } = 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: experimentKey,\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(ANY_CLICK_ACTION);\n optimizely.track(MODAL_CLICK_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 upgradeDeadlineDate = accessExpiration ? new Date(accessExpiration.upgradeDeadline) : null;\n const pastDeadline = accessExpiration ? new Date(dateNow) > upgradeDeadlineDate : false;\n const isFBE = !!accessExpiration && !!datesBannerInfo?.contentTypeGatingEnabled;\n const upsellMessage = getBulletVariation({\n enabled,\n variationKey,\n isFBE,\n enabledVariation: (\n <ExperimentalUpsellTable {...{ isFBE }} />\n ),\n });\n let callToActionButton = (\n <UpgradeButton\n offer={offer}\n onClick={logClick}\n verifiedMode={verifiedMode}\n block\n />\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 <BaseModal\n {...{\n isOpen,\n close,\n courseId,\n offer,\n callToActionButton,\n variationKey,\n }}\n >\n {upsellMessage}\n </BaseModal>\n );\n};\n\nExperimentalUpgradeModal.defaultProps = {\n verifiedMode: {},\n offer: null,\n accessExpiration: null,\n datesBannerInfo: null,\n};\nExperimentalUpgradeModal.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 datesBannerInfo: PropTypes.shape({\n contentTypeGatingEnabled: PropTypes.bool,\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 /* eslint-disable-next-line react/forbid-prop-types */\n optimizely: PropTypes.object.isRequired,\n};\n\nexport default withOptimizely(ExperimentalUpgradeModal);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -41,8 +41,9 @@ const ExperimentalUpgradeNotification = _ref => {
|
|
|
41
41
|
const {
|
|
42
42
|
KEY: experimentKey,
|
|
43
43
|
VARIATIONS,
|
|
44
|
-
|
|
45
|
-
|
|
44
|
+
ANY_CLICK_ACTION,
|
|
45
|
+
SIDEBAR_CLICK_ACTION
|
|
46
|
+
} = _data.OPTIMIZELY_VTR_BULLET_EXPERIMENT;
|
|
46
47
|
const {
|
|
47
48
|
formatMessage
|
|
48
49
|
} = (0, _i18n.useIntl)();
|
|
@@ -113,7 +114,8 @@ const ExperimentalUpgradeNotification = _ref => {
|
|
|
113
114
|
linkType: 'button',
|
|
114
115
|
pageName: upsellPageName
|
|
115
116
|
}));
|
|
116
|
-
optimizely.track(
|
|
117
|
+
optimizely.track(ANY_CLICK_ACTION);
|
|
118
|
+
optimizely.track(SIDEBAR_CLICK_ACTION);
|
|
117
119
|
};
|
|
118
120
|
const logClickPastExpiration = () => {
|
|
119
121
|
(0, _analytics.sendTrackEvent)('edx.bi.ecommerce.upgrade_notification.past_expiration.button_clicked', _objectSpread(_objectSpread(_objectSpread({}, eventProperties), experimentProperties), {}, {
|
|
@@ -137,7 +139,10 @@ const ExperimentalUpgradeNotification = _ref => {
|
|
|
137
139
|
let upsellMessage = (0, _utils.default)({
|
|
138
140
|
enabled,
|
|
139
141
|
variationKey,
|
|
140
|
-
isFBE
|
|
142
|
+
isFBE,
|
|
143
|
+
enabledVariation: /*#__PURE__*/(0, _jsxRuntime.jsx)(_generic.ExperimentalUpsellBullets, {
|
|
144
|
+
isFBE
|
|
145
|
+
})
|
|
141
146
|
});
|
|
142
147
|
let callToActionButton;
|
|
143
148
|
let offerCode;
|
|
@@ -174,7 +179,7 @@ const ExperimentalUpgradeNotification = _ref => {
|
|
|
174
179
|
setupgradeNotificationCurrentState: setupgradeNotificationCurrentState,
|
|
175
180
|
type: "access"
|
|
176
181
|
});
|
|
177
|
-
if (variationKey === VARIATIONS.
|
|
182
|
+
if (variationKey === VARIATIONS.CONTROL) {
|
|
178
183
|
upsellMessage = /*#__PURE__*/(0, _jsxRuntime.jsx)(_generic.UpsellFBESoonCardContent, {
|
|
179
184
|
accessExpirationDate: accessExpirationDate,
|
|
180
185
|
timezoneFormatArgs: timezoneFormatArgs
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExperimentalUpgradeNotification.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_classnames","_i18n","_analytics","_paragon","_icons","_reactSdk","_upgradeButton","_modelStore","_utils","_data","_certificatePreview","_generic","_messages","_jsxRuntime","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","ExperimentalUpgradeNotification","_ref","id","courseId","model","setNotificationCurrentState","toggleSidebar","optimizely","pluginLocationId","KEY","experimentKey","VARIATIONS","PRIMARY_ACTION","OPTIMIZELY_VTR_SIDEBAR_EXPERIMENT","formatMessage","useIntl","org","userTimezone","verifiedMode","useModel","marketingUrl","accessExpiration","datesBannerInfo","offer","timeOffsetMillis","dateNow","Date","now","timezoneFormatArgs","timeZone","correctedTime","accessExpirationDate","expirationDate","pastExpirationDeadline","shouldDisplayBorder","includes","upsellPageName","setupgradeNotificationCurrentState","isFBE","contentTypeGatingEnabled","decision","useDecision","enabled","variationKey","experimentProperties","experiment_key","variation_key","eventProperties","org_key","courserun_key","promotionEventProperties","creative","name","position","promotion_id","useEffect","sendTrackingLogEvent","sendTrackEvent","logClick","location","linkCategory","linkName","linkType","pageName","track","logClickPastExpiration","upgradeNotificationHeaderText","expirationBanner","upsellMessage","getBulletVariation","callToActionButton","offerCode","hoursToAccessExpiration","Math","floor","hoursToDiscountExpiration","messages","firstTimeLearnerDiscountHeader","percentage","jsx","ExpirationCountdown","hoursToExpiration","type","accessExpirationHeader","AccessExpirationDateBanner","accessExpirationUrgentHeader","OFF","UpsellFBESoonCardContent","accessExpirationPastHeader","PastExpirationDateBanner","PastExpirationCardContent","Button","variant","onClick","href","block","children","pastExpirationCallToActionLabel","UpgradeButton","className","discountCodeMessage","code","classNames","jsxs","pursueCertificateMessage","IconButton","src","Close","size","iconAs","Icon","alt","closeAlt","propTypes","PropTypes","string","isRequired","func","object","defaultProps","_default","exports","withOptimizely"],"sources":["../../src/upgrade-notification/ExperimentalUpgradeNotification.jsx"],"sourcesContent":["/* eslint import/no-unresolved: 0 */\nimport React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { useIntl } from '@edx/frontend-platform/i18n';\nimport { sendTrackEvent, sendTrackingLogEvent } from '@edx/frontend-platform/analytics';\nimport { Button, Icon, IconButton } from '@openedx/paragon';\nimport { Close } from '@openedx/paragon/icons';\nimport { useDecision, withOptimizely } from '@optimizely/react-sdk';\n\nimport { UpgradeButton } from '@src/generic/upgrade-button';\nimport { useModel } from '@src/generic/model-store';\n\nimport getBulletVariation from '../optimizely/utils';\nimport { OPTIMIZELY_VTR_SIDEBAR_EXPERIMENT } from '../data';\nimport CertificatePreview from './certificate-preview';\nimport {\n ExpirationCountdown,\n AccessExpirationDateBanner,\n PastExpirationDateBanner,\n PastExpirationCardContent,\n UpsellFBESoonCardContent,\n} from '../generic';\nimport messages from './messages';\n\nconst ExperimentalUpgradeNotification = ({\n id,\n courseId,\n model,\n setNotificationCurrentState,\n toggleSidebar,\n optimizely,\n}) => {\n const pluginLocationId = id;\n const { KEY: experimentKey, VARIATIONS, PRIMARY_ACTION } = OPTIMIZELY_VTR_SIDEBAR_EXPERIMENT;\n const { formatMessage } = useIntl();\n\n const {\n org,\n userTimezone,\n verifiedMode,\n } = useModel('courseHomeMeta', courseId);\n\n const {\n marketingUrl,\n } = useModel('coursewareMeta', courseId);\n\n const {\n accessExpiration,\n datesBannerInfo,\n offer,\n timeOffsetMillis,\n } = useModel(model, courseId);\n\n const dateNow = Date.now();\n const timezoneFormatArgs = userTimezone ? { timeZone: userTimezone } : {};\n const correctedTime = new Date(dateNow + timeOffsetMillis);\n const accessExpirationDate = accessExpiration ? new Date(accessExpiration.expirationDate) : null;\n const pastExpirationDeadline = accessExpiration ? new Date(dateNow) > accessExpirationDate : false;\n const shouldDisplayBorder = pluginLocationId.includes('outline');\n const upsellPageName = pluginLocationId === 'outline_tab_notifications' ? 'course_home' : 'in_course';\n const setupgradeNotificationCurrentState = setNotificationCurrentState;\n const isFBE = !!accessExpiration && !!datesBannerInfo?.contentTypeGatingEnabled;\n\n const [decision] = useDecision(experimentKey);\n const { enabled, 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: experimentKey,\n variation_key: variationKey,\n };\n\n const eventProperties = {\n org_key: org,\n courserun_key: courseId,\n };\n\n const promotionEventProperties = {\n creative: 'sidebarupsell',\n name: 'In-Course Verification Prompt',\n position: 'sidebar-message',\n promotion_id: 'courseware_verified_certificate_upsell',\n ...eventProperties,\n ...experimentProperties,\n };\n\n useEffect(() => {\n sendTrackingLogEvent('edx.bi.course.upgrade.sidebarupsell.displayed', eventProperties);\n sendTrackEvent('Promotion Viewed', promotionEventProperties);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n if (!verifiedMode) {\n return null;\n }\n\n const logClick = () => {\n sendTrackingLogEvent('edx.bi.course.upgrade.sidebarupsell.clicked', eventProperties);\n sendTrackingLogEvent('edx.course.enrollment.upgrade.clicked', {\n ...eventProperties,\n location: 'sidebar-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(PRIMARY_ACTION);\n };\n\n const logClickPastExpiration = () => {\n sendTrackEvent('edx.bi.ecommerce.upgrade_notification.past_expiration.button_clicked', {\n ...eventProperties,\n ...experimentProperties,\n linkCategory: 'upgrade_notification',\n linkName: `${upsellPageName}_course_details`,\n linkType: 'button',\n pageName: upsellPageName,\n });\n };\n\n /*\n There are 5 parts that change in the upgrade card:\n upgradeNotificationHeaderText\n expirationBanner\n upsellMessage\n callToActionButton\n offerCode\n */\n let upgradeNotificationHeaderText;\n let expirationBanner;\n let upsellMessage = getBulletVariation({ enabled, variationKey, isFBE });\n let callToActionButton;\n let offerCode;\n\n if (isFBE) {\n const hoursToAccessExpiration = Math.floor((accessExpirationDate - correctedTime) / 1000 / 60 / 60);\n\n if (hoursToAccessExpiration >= (7 * 24)) {\n if (offer) { // countdown to the first purchase discount if there is one\n const hoursToDiscountExpiration = Math.floor((new Date(offer.expirationDate) - correctedTime) / 1000 / 60 / 60);\n upgradeNotificationHeaderText = formatMessage(\n messages.firstTimeLearnerDiscountHeader,\n { percentage: (offer.percentage) },\n );\n expirationBanner = (\n <ExpirationCountdown\n courseId={courseId}\n hoursToExpiration={hoursToDiscountExpiration}\n setupgradeNotificationCurrentState={setupgradeNotificationCurrentState}\n type=\"offer\"\n />\n );\n } else {\n upgradeNotificationHeaderText = formatMessage(messages.accessExpirationHeader);\n expirationBanner = (\n <AccessExpirationDateBanner\n courseId={courseId}\n accessExpirationDate={accessExpirationDate}\n timezoneFormatArgs={timezoneFormatArgs}\n setupgradeNotificationCurrentState={setupgradeNotificationCurrentState}\n />\n );\n }\n } else if (hoursToAccessExpiration < (7 * 24) && hoursToAccessExpiration >= 0) {\n // more urgent messaging if there's less than 7 days left to access expiration\n upgradeNotificationHeaderText = formatMessage(messages.accessExpirationUrgentHeader);\n expirationBanner = (\n <ExpirationCountdown\n courseId={courseId}\n hoursToExpiration={hoursToAccessExpiration}\n setupgradeNotificationCurrentState={setupgradeNotificationCurrentState}\n type=\"access\"\n />\n );\n if (variationKey === VARIATIONS.OFF) {\n upsellMessage = (\n <UpsellFBESoonCardContent\n accessExpirationDate={accessExpirationDate}\n timezoneFormatArgs={timezoneFormatArgs}\n />\n );\n }\n } else { // access expiration deadline has passed\n upgradeNotificationHeaderText = formatMessage(messages.accessExpirationPastHeader);\n expirationBanner = (\n <PastExpirationDateBanner\n courseId={courseId}\n accessExpirationDate={accessExpirationDate}\n timezoneFormatArgs={timezoneFormatArgs}\n setupgradeNotificationCurrentState={setupgradeNotificationCurrentState}\n />\n );\n upsellMessage = (\n <PastExpirationCardContent />\n );\n }\n }\n\n if (pastExpirationDeadline) {\n callToActionButton = (\n <Button\n variant=\"primary\"\n onClick={logClickPastExpiration}\n href={marketingUrl}\n block\n >\n {formatMessage(messages.pastExpirationCallToActionLabel)}\n </Button>\n );\n } else {\n callToActionButton = (\n <UpgradeButton\n offer={offer}\n onClick={logClick}\n verifiedMode={verifiedMode}\n block\n />\n );\n }\n\n if (offer) { // if there's a first purchase discount, message the code at the bottom\n offerCode = (\n <div className=\"text-center discount-info\">\n {formatMessage(\n messages.discountCodeMessage,\n {\n code: (<span className=\"font-weight-bold\">{offer.code}</span>),\n },\n )}\n </div>\n );\n }\n\n return (\n <section className={classNames('upgrade-notification small', { 'pgn__card pgn__card-light card mb-4 rounded': shouldDisplayBorder })}>\n <div id=\"courseHome-upgradeNotification\">\n <h2\n className={classNames('upgrade-notification-header', {\n 'd-flex align-items-center mr-2 ml-4 my-1.5 font-size-18': !!toggleSidebar,\n })}\n id=\"outline-sidebar-upgrade-header\"\n >\n {formatMessage(messages.pursueCertificateMessage)}\n {!!toggleSidebar && (\n <div className=\"d-inline-flex ml-auto\">\n <IconButton\n src={Close}\n size=\"sm\"\n iconAs={Icon}\n onClick={toggleSidebar}\n className=\"icon-hover\"\n alt={formatMessage(messages.closeAlt)}\n />\n </div>\n )}\n </h2>\n <CertificatePreview courseId={courseId} />\n <h3 className=\"ml-4\">\n {upgradeNotificationHeaderText}\n </h3>\n {expirationBanner}\n <div className=\"upgrade-notification-message\">\n {upsellMessage}\n </div>\n <div className=\"upgrade-notification-button\">\n {callToActionButton}\n </div>\n {offerCode}\n </div>\n </section>\n );\n};\n\nExperimentalUpgradeNotification.propTypes = {\n id: PropTypes.string.isRequired,\n courseId: PropTypes.string.isRequired,\n model: PropTypes.string,\n setNotificationCurrentState: PropTypes.func,\n toggleSidebar: PropTypes.func,\n /* eslint-disable-next-line react/forbid-prop-types */\n optimizely: PropTypes.object.isRequired,\n};\n\nExperimentalUpgradeNotification.defaultProps = {\n setNotificationCurrentState: null,\n toggleSidebar: null,\n model: 'outline',\n};\n\nexport default withOptimizely(ExperimentalUpgradeNotification);\n"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,UAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,WAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AACA,IAAAM,QAAA,GAAAN,OAAA;AACA,IAAAO,MAAA,GAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AAEA,IAAAS,cAAA,GAAAT,OAAA;AACA,IAAAU,WAAA,GAAAV,OAAA;AAEA,IAAAW,MAAA,GAAAT,sBAAA,CAAAF,OAAA;AACA,IAAAY,KAAA,GAAAZ,OAAA;AACA,IAAAa,mBAAA,GAAAX,sBAAA,CAAAF,OAAA;AACA,IAAAc,QAAA,GAAAd,OAAA;AAOA,IAAAe,SAAA,GAAAb,sBAAA,CAAAF,OAAA;AAAkC,IAAAgB,WAAA,GAAAhB,OAAA;AAAA,SAAAE,uBAAAe,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAtB,wBAAAsB,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAH,UAAA,SAAAG,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAF,OAAA,EAAAE,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAJ,CAAA,UAAAG,CAAA,CAAAE,GAAA,CAAAL,CAAA,OAAAM,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAZ,CAAA,oBAAAY,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAd,CAAA,EAAAY,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAX,CAAA,EAAAY,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAZ,CAAA,CAAAY,CAAA,YAAAN,CAAA,CAAAR,OAAA,GAAAE,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAa,GAAA,CAAAhB,CAAA,EAAAM,CAAA,GAAAA,CAAA;AAAA,SAAAW,QAAAjB,CAAA,EAAAE,CAAA,QAAAC,CAAA,GAAAM,MAAA,CAAAS,IAAA,CAAAlB,CAAA,OAAAS,MAAA,CAAAU,qBAAA,QAAAC,CAAA,GAAAX,MAAA,CAAAU,qBAAA,CAAAnB,CAAA,GAAAE,CAAA,KAAAkB,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAnB,CAAA,WAAAO,MAAA,CAAAE,wBAAA,CAAAX,CAAA,EAAAE,CAAA,EAAAoB,UAAA,OAAAnB,CAAA,CAAAoB,IAAA,CAAAC,KAAA,CAAArB,CAAA,EAAAiB,CAAA,YAAAjB,CAAA;AAAA,SAAAsB,cAAAzB,CAAA,aAAAE,CAAA,MAAAA,CAAA,GAAAwB,SAAA,CAAAC,MAAA,EAAAzB,CAAA,UAAAC,CAAA,WAAAuB,SAAA,CAAAxB,CAAA,IAAAwB,SAAA,CAAAxB,CAAA,QAAAA,CAAA,OAAAe,OAAA,CAAAR,MAAA,CAAAN,CAAA,OAAAyB,OAAA,WAAA1B,CAAA,IAAA2B,eAAA,CAAA7B,CAAA,EAAAE,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAO,MAAA,CAAAqB,yBAAA,GAAArB,MAAA,CAAAsB,gBAAA,CAAA/B,CAAA,EAAAS,MAAA,CAAAqB,yBAAA,CAAA3B,CAAA,KAAAc,OAAA,CAAAR,MAAA,CAAAN,CAAA,GAAAyB,OAAA,WAAA1B,CAAA,IAAAO,MAAA,CAAAC,cAAA,CAAAV,CAAA,EAAAE,CAAA,EAAAO,MAAA,CAAAE,wBAAA,CAAAR,CAAA,EAAAD,CAAA,iBAAAF,CAAA;AAAA,SAAA6B,gBAAAjC,GAAA,EAAAoC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAApC,GAAA,IAAAa,MAAA,CAAAC,cAAA,CAAAd,GAAA,EAAAoC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAX,UAAA,QAAAa,YAAA,QAAAC,QAAA,oBAAAxC,GAAA,CAAAoC,GAAA,IAAAC,KAAA,WAAArC,GAAA;AAAA,SAAAsC,eAAA/B,CAAA,QAAAY,CAAA,GAAAsB,YAAA,CAAAlC,CAAA,uCAAAY,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAsB,aAAAlC,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAH,CAAA,GAAAG,CAAA,CAAAmC,MAAA,CAAAC,WAAA,kBAAAvC,CAAA,QAAAe,CAAA,GAAAf,CAAA,CAAAc,IAAA,CAAAX,CAAA,EAAAD,CAAA,uCAAAa,CAAA,SAAAA,CAAA,YAAAyB,SAAA,yEAAAtC,CAAA,GAAAuC,MAAA,GAAAC,MAAA,EAAAvC,CAAA,KAvBlC;AAyBA,MAAMwC,+BAA+B,GAAGC,IAAA,IAOlC;EAAA,IAPmC;IACvCC,EAAE;IACFC,QAAQ;IACRC,KAAK;IACLC,2BAA2B;IAC3BC,aAAa;IACbC;EACF,CAAC,GAAAN,IAAA;EACC,MAAMO,gBAAgB,GAAGN,EAAE;EAC3B,MAAM;IAAEO,GAAG,EAAEC,aAAa;IAAEC,UAAU;IAAEC;EAAe,CAAC,GAAGC,uCAAiC;EAC5F,MAAM;IAAEC;EAAc,CAAC,GAAG,IAAAC,aAAO,EAAC,CAAC;EAEnC,MAAM;IACJC,GAAG;IACHC,YAAY;IACZC;EACF,CAAC,GAAG,IAAAC,oBAAQ,EAAC,gBAAgB,EAAEhB,QAAQ,CAAC;EAExC,MAAM;IACJiB;EACF,CAAC,GAAG,IAAAD,oBAAQ,EAAC,gBAAgB,EAAEhB,QAAQ,CAAC;EAExC,MAAM;IACJkB,gBAAgB;IAChBC,eAAe;IACfC,KAAK;IACLC;EACF,CAAC,GAAG,IAAAL,oBAAQ,EAACf,KAAK,EAAED,QAAQ,CAAC;EAE7B,MAAMsB,OAAO,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC;EAC1B,MAAMC,kBAAkB,GAAGX,YAAY,GAAG;IAAEY,QAAQ,EAAEZ;EAAa,CAAC,GAAG,CAAC,CAAC;EACzE,MAAMa,aAAa,GAAG,IAAIJ,IAAI,CAACD,OAAO,GAAGD,gBAAgB,CAAC;EAC1D,MAAMO,oBAAoB,GAAGV,gBAAgB,GAAG,IAAIK,IAAI,CAACL,gBAAgB,CAACW,cAAc,CAAC,GAAG,IAAI;EAChG,MAAMC,sBAAsB,GAAGZ,gBAAgB,GAAG,IAAIK,IAAI,CAACD,OAAO,CAAC,GAAGM,oBAAoB,GAAG,KAAK;EAClG,MAAMG,mBAAmB,GAAG1B,gBAAgB,CAAC2B,QAAQ,CAAC,SAAS,CAAC;EAChE,MAAMC,cAAc,GAAG5B,gBAAgB,KAAK,2BAA2B,GAAG,aAAa,GAAG,WAAW;EACrG,MAAM6B,kCAAkC,GAAGhC,2BAA2B;EACtE,MAAMiC,KAAK,GAAG,CAAC,CAACjB,gBAAgB,IAAI,CAAC,CAACC,eAAe,EAAEiB,wBAAwB;EAE/E,MAAM,CAACC,QAAQ,CAAC,GAAG,IAAAC,qBAAW,EAAC/B,aAAa,CAAC;EAC7C,MAAM;IAAEgC,OAAO;IAAEC;EAAa,CAAC,GAAGH,QAAQ;;EAE1C;EACA;EACA,MAAMI,oBAAoB,GAAG;IAC3BC,cAAc,EAAEnC,aAAa;IAC7BoC,aAAa,EAAEH;EACjB,CAAC;EAED,MAAMI,eAAe,GAAG;IACtBC,OAAO,EAAEhC,GAAG;IACZiC,aAAa,EAAE9C;EACjB,CAAC;EAED,MAAM+C,wBAAwB,GAAApE,aAAA,CAAAA,aAAA;IAC5BqE,QAAQ,EAAE,eAAe;IACzBC,IAAI,EAAE,+BAA+B;IACrCC,QAAQ,EAAE,iBAAiB;IAC3BC,YAAY,EAAE;EAAwC,GACnDP,eAAe,GACfH,oBAAoB,CACxB;EAED,IAAAW,gBAAS,EAAC,MAAM;IACd,IAAAC,+BAAoB,EAAC,+CAA+C,EAAET,eAAe,CAAC;IACtF,IAAAU,yBAAc,EAAC,kBAAkB,EAAEP,wBAAwB,CAAC;IAC5D;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,IAAI,CAAChC,YAAY,EAAE;IACjB,OAAO,IAAI;EACb;EAEA,MAAMwC,QAAQ,GAAGA,CAAA,KAAM;IACrB,IAAAF,+BAAoB,EAAC,6CAA6C,EAAET,eAAe,CAAC;IACpF,IAAAS,+BAAoB,EAAC,uCAAuC,EAAA1E,aAAA,CAAAA,aAAA,KACvDiE,eAAe;MAClBY,QAAQ,EAAE;IAAiB,EAC5B,CAAC;IACF,IAAAF,yBAAc,EAAC,mBAAmB,EAAEP,wBAAwB,CAAC;IAC7D,IAAAO,yBAAc,EAAC,uCAAuC,EAAA3E,aAAA,CAAAA,aAAA,CAAAA,aAAA,KACjDiE,eAAe,GACfH,oBAAoB;MACvBgB,YAAY,EAAE,eAAe;MAC7BC,QAAQ,EAAE,GAAGzB,cAAc,QAAQ;MACnC0B,QAAQ,EAAE,QAAQ;MAClBC,QAAQ,EAAE3B;IAAc,EACzB,CAAC;IACF7B,UAAU,CAACyD,KAAK,CAACpD,cAAc,CAAC;EAClC,CAAC;EAED,MAAMqD,sBAAsB,GAAGA,CAAA,KAAM;IACnC,IAAAR,yBAAc,EAAC,sEAAsE,EAAA3E,aAAA,CAAAA,aAAA,CAAAA,aAAA,KAChFiE,eAAe,GACfH,oBAAoB;MACvBgB,YAAY,EAAE,sBAAsB;MACpCC,QAAQ,EAAE,GAAGzB,cAAc,iBAAiB;MAC5C0B,QAAQ,EAAE,QAAQ;MAClBC,QAAQ,EAAE3B;IAAc,EACzB,CAAC;EACJ,CAAC;;EAED;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,IAAI8B,6BAA6B;EACjC,IAAIC,gBAAgB;EACpB,IAAIC,aAAa,GAAG,IAAAC,cAAkB,EAAC;IAAE3B,OAAO;IAAEC,YAAY;IAAEL;EAAM,CAAC,CAAC;EACxE,IAAIgC,kBAAkB;EACtB,IAAIC,SAAS;EAEb,IAAIjC,KAAK,EAAE;IACT,MAAMkC,uBAAuB,GAAGC,IAAI,CAACC,KAAK,CAAC,CAAC3C,oBAAoB,GAAGD,aAAa,IAAI,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC;IAEnG,IAAI0C,uBAAuB,IAAK,CAAC,GAAG,EAAG,EAAE;MACvC,IAAIjD,KAAK,EAAE;QAAE;QACX,MAAMoD,yBAAyB,GAAGF,IAAI,CAACC,KAAK,CAAC,CAAC,IAAIhD,IAAI,CAACH,KAAK,CAACS,cAAc,CAAC,GAAGF,aAAa,IAAI,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC;QAC/GoC,6BAA6B,GAAGpD,aAAa,CAC3C8D,iBAAQ,CAACC,8BAA8B,EACvC;UAAEC,UAAU,EAAGvD,KAAK,CAACuD;QAAY,CACnC,CAAC;QACDX,gBAAgB,gBACd,IAAAnH,WAAA,CAAA+H,GAAA,EAACjI,QAAA,CAAAkI,mBAAmB;UAClB7E,QAAQ,EAAEA,QAAS;UACnB8E,iBAAiB,EAAEN,yBAA0B;UAC7CtC,kCAAkC,EAAEA,kCAAmC;UACvE6C,IAAI,EAAC;QAAO,CACb,CACF;MACH,CAAC,MAAM;QACLhB,6BAA6B,GAAGpD,aAAa,CAAC8D,iBAAQ,CAACO,sBAAsB,CAAC;QAC9EhB,gBAAgB,gBACd,IAAAnH,WAAA,CAAA+H,GAAA,EAACjI,QAAA,CAAAsI,0BAA0B;UACzBjF,QAAQ,EAAEA,QAAS;UACnB4B,oBAAoB,EAAEA,oBAAqB;UAC3CH,kBAAkB,EAAEA,kBAAmB;UACvCS,kCAAkC,EAAEA;QAAmC,CACxE,CACF;MACH;IACF,CAAC,MAAM,IAAImC,uBAAuB,GAAI,CAAC,GAAG,EAAG,IAAIA,uBAAuB,IAAI,CAAC,EAAE;MAC7E;MACAN,6BAA6B,GAAGpD,aAAa,CAAC8D,iBAAQ,CAACS,4BAA4B,CAAC;MACpFlB,gBAAgB,gBACd,IAAAnH,WAAA,CAAA+H,GAAA,EAACjI,QAAA,CAAAkI,mBAAmB;QAClB7E,QAAQ,EAAEA,QAAS;QACnB8E,iBAAiB,EAAET,uBAAwB;QAC3CnC,kCAAkC,EAAEA,kCAAmC;QACvE6C,IAAI,EAAC;MAAQ,CACd,CACF;MACD,IAAIvC,YAAY,KAAKhC,UAAU,CAAC2E,GAAG,EAAE;QACnClB,aAAa,gBACX,IAAApH,WAAA,CAAA+H,GAAA,EAACjI,QAAA,CAAAyI,wBAAwB;UACvBxD,oBAAoB,EAAEA,oBAAqB;UAC3CH,kBAAkB,EAAEA;QAAmB,CACxC,CACF;MACH;IACF,CAAC,MAAM;MAAE;MACPsC,6BAA6B,GAAGpD,aAAa,CAAC8D,iBAAQ,CAACY,0BAA0B,CAAC;MAClFrB,gBAAgB,gBACd,IAAAnH,WAAA,CAAA+H,GAAA,EAACjI,QAAA,CAAA2I,wBAAwB;QACvBtF,QAAQ,EAAEA,QAAS;QACnB4B,oBAAoB,EAAEA,oBAAqB;QAC3CH,kBAAkB,EAAEA,kBAAmB;QACvCS,kCAAkC,EAAEA;MAAmC,CACxE,CACF;MACD+B,aAAa,gBACX,IAAApH,WAAA,CAAA+H,GAAA,EAACjI,QAAA,CAAA4I,yBAAyB,IAAE,CAC7B;IACH;EACF;EAEA,IAAIzD,sBAAsB,EAAE;IAC1BqC,kBAAkB,gBAChB,IAAAtH,WAAA,CAAA+H,GAAA,EAACzI,QAAA,CAAAqJ,MAAM;MACLC,OAAO,EAAC,SAAS;MACjBC,OAAO,EAAE5B,sBAAuB;MAChC6B,IAAI,EAAE1E,YAAa;MACnB2E,KAAK;MAAAC,QAAA,EAEJlF,aAAa,CAAC8D,iBAAQ,CAACqB,+BAA+B;IAAC,CAClD,CACT;EACH,CAAC,MAAM;IACL3B,kBAAkB,gBAChB,IAAAtH,WAAA,CAAA+H,GAAA,EAACtI,cAAA,CAAAyJ,aAAa;MACZ3E,KAAK,EAAEA,KAAM;MACbsE,OAAO,EAAEnC,QAAS;MAClBxC,YAAY,EAAEA,YAAa;MAC3B6E,KAAK;IAAA,CACN,CACF;EACH;EAEA,IAAIxE,KAAK,EAAE;IAAE;IACXgD,SAAS,gBACP,IAAAvH,WAAA,CAAA+H,GAAA;MAAKoB,SAAS,EAAC,2BAA2B;MAAAH,QAAA,EACvClF,aAAa,CACZ8D,iBAAQ,CAACwB,mBAAmB,EAC5B;QACEC,IAAI,eAAG,IAAArJ,WAAA,CAAA+H,GAAA;UAAMoB,SAAS,EAAC,kBAAkB;UAAAH,QAAA,EAAEzE,KAAK,CAAC8E;QAAI,CAAO;MAC9D,CACF;IAAC,CACE,CACN;EACH;EAEA,oBACE,IAAArJ,WAAA,CAAA+H,GAAA;IAASoB,SAAS,EAAE,IAAAG,mBAAU,EAAC,4BAA4B,EAAE;MAAE,6CAA6C,EAAEpE;IAAoB,CAAC,CAAE;IAAA8D,QAAA,eACnI,IAAAhJ,WAAA,CAAAuJ,IAAA;MAAKrG,EAAE,EAAC,gCAAgC;MAAA8F,QAAA,gBACtC,IAAAhJ,WAAA,CAAAuJ,IAAA;QACEJ,SAAS,EAAE,IAAAG,mBAAU,EAAC,6BAA6B,EAAE;UACnD,yDAAyD,EAAE,CAAC,CAAChG;QAC/D,CAAC,CAAE;QACHJ,EAAE,EAAC,gCAAgC;QAAA8F,QAAA,GAElClF,aAAa,CAAC8D,iBAAQ,CAAC4B,wBAAwB,CAAC,EAChD,CAAC,CAAClG,aAAa,iBACd,IAAAtD,WAAA,CAAA+H,GAAA;UAAKoB,SAAS,EAAC,uBAAuB;UAAAH,QAAA,eACpC,IAAAhJ,WAAA,CAAA+H,GAAA,EAACzI,QAAA,CAAAmK,UAAU;YACTC,GAAG,EAAEC,YAAM;YACXC,IAAI,EAAC,IAAI;YACTC,MAAM,EAAEC,aAAK;YACbjB,OAAO,EAAEvF,aAAc;YACvB6F,SAAS,EAAC,YAAY;YACtBY,GAAG,EAAEjG,aAAa,CAAC8D,iBAAQ,CAACoC,QAAQ;UAAE,CACvC;QAAC,CACC,CACN;MAAA,CACC,CAAC,eACL,IAAAhK,WAAA,CAAA+H,GAAA,EAAClI,mBAAA,CAAAM,OAAkB;QAACgD,QAAQ,EAAEA;MAAS,CAAE,CAAC,eAC1C,IAAAnD,WAAA,CAAA+H,GAAA;QAAIoB,SAAS,EAAC,MAAM;QAAAH,QAAA,EACjB9B;MAA6B,CAC5B,CAAC,EACJC,gBAAgB,eACjB,IAAAnH,WAAA,CAAA+H,GAAA;QAAKoB,SAAS,EAAC,8BAA8B;QAAAH,QAAA,EAC1C5B;MAAa,CACX,CAAC,eACN,IAAApH,WAAA,CAAA+H,GAAA;QAAKoB,SAAS,EAAC,6BAA6B;QAAAH,QAAA,EACzC1B;MAAkB,CAChB,CAAC,EACLC,SAAS;IAAA,CACP;EAAC,CACC,CAAC;AAEd,CAAC;AAEDvE,+BAA+B,CAACiH,SAAS,GAAG;EAC1C/G,EAAE,EAAEgH,kBAAS,CAACC,MAAM,CAACC,UAAU;EAC/BjH,QAAQ,EAAE+G,kBAAS,CAACC,MAAM,CAACC,UAAU;EACrChH,KAAK,EAAE8G,kBAAS,CAACC,MAAM;EACvB9G,2BAA2B,EAAE6G,kBAAS,CAACG,IAAI;EAC3C/G,aAAa,EAAE4G,kBAAS,CAACG,IAAI;EAC7B;EACA9G,UAAU,EAAE2G,kBAAS,CAACI,MAAM,CAACF;AAC/B,CAAC;AAEDpH,+BAA+B,CAACuH,YAAY,GAAG;EAC7ClH,2BAA2B,EAAE,IAAI;EACjCC,aAAa,EAAE,IAAI;EACnBF,KAAK,EAAE;AACT,CAAC;AAAC,IAAAoH,QAAA,GAAAC,OAAA,CAAAtK,OAAA,GAEa,IAAAuK,wBAAc,EAAC1H,+BAA+B,CAAC","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"ExperimentalUpgradeNotification.js","names":["_react","_interopRequireWildcard","require","_propTypes","_interopRequireDefault","_classnames","_i18n","_analytics","_paragon","_icons","_reactSdk","_upgradeButton","_modelStore","_utils","_data","_certificatePreview","_generic","_messages","_jsxRuntime","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","key","value","_toPropertyKey","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","ExperimentalUpgradeNotification","_ref","id","courseId","model","setNotificationCurrentState","toggleSidebar","optimizely","pluginLocationId","KEY","experimentKey","VARIATIONS","ANY_CLICK_ACTION","SIDEBAR_CLICK_ACTION","OPTIMIZELY_VTR_BULLET_EXPERIMENT","formatMessage","useIntl","org","userTimezone","verifiedMode","useModel","marketingUrl","accessExpiration","datesBannerInfo","offer","timeOffsetMillis","dateNow","Date","now","timezoneFormatArgs","timeZone","correctedTime","accessExpirationDate","expirationDate","pastExpirationDeadline","shouldDisplayBorder","includes","upsellPageName","setupgradeNotificationCurrentState","isFBE","contentTypeGatingEnabled","decision","useDecision","enabled","variationKey","experimentProperties","experiment_key","variation_key","eventProperties","org_key","courserun_key","promotionEventProperties","creative","name","position","promotion_id","useEffect","sendTrackingLogEvent","sendTrackEvent","logClick","location","linkCategory","linkName","linkType","pageName","track","logClickPastExpiration","upgradeNotificationHeaderText","expirationBanner","upsellMessage","getBulletVariation","enabledVariation","jsx","ExperimentalUpsellBullets","callToActionButton","offerCode","hoursToAccessExpiration","Math","floor","hoursToDiscountExpiration","messages","firstTimeLearnerDiscountHeader","percentage","ExpirationCountdown","hoursToExpiration","type","accessExpirationHeader","AccessExpirationDateBanner","accessExpirationUrgentHeader","CONTROL","UpsellFBESoonCardContent","accessExpirationPastHeader","PastExpirationDateBanner","PastExpirationCardContent","Button","variant","onClick","href","block","children","pastExpirationCallToActionLabel","UpgradeButton","className","discountCodeMessage","code","classNames","jsxs","pursueCertificateMessage","IconButton","src","Close","size","iconAs","Icon","alt","closeAlt","propTypes","PropTypes","string","isRequired","func","object","defaultProps","_default","exports","withOptimizely"],"sources":["../../src/upgrade-notification/ExperimentalUpgradeNotification.jsx"],"sourcesContent":["/* eslint import/no-unresolved: 0 */\nimport React, { useEffect } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport { useIntl } from '@edx/frontend-platform/i18n';\nimport { sendTrackEvent, sendTrackingLogEvent } from '@edx/frontend-platform/analytics';\nimport { Button, Icon, IconButton } from '@openedx/paragon';\nimport { Close } from '@openedx/paragon/icons';\nimport { useDecision, withOptimizely } from '@optimizely/react-sdk';\n\nimport { UpgradeButton } from '@src/generic/upgrade-button';\nimport { useModel } from '@src/generic/model-store';\n\nimport getBulletVariation from '../optimizely/utils';\nimport { OPTIMIZELY_VTR_BULLET_EXPERIMENT } from '../data';\nimport CertificatePreview from './certificate-preview';\nimport {\n ExpirationCountdown,\n AccessExpirationDateBanner,\n PastExpirationDateBanner,\n PastExpirationCardContent,\n UpsellFBESoonCardContent,\n ExperimentalUpsellBullets,\n} from '../generic';\nimport messages from './messages';\n\nconst ExperimentalUpgradeNotification = ({\n id,\n courseId,\n model,\n setNotificationCurrentState,\n toggleSidebar,\n optimizely,\n}) => {\n const pluginLocationId = id;\n const {\n KEY: experimentKey,\n VARIATIONS,\n ANY_CLICK_ACTION,\n SIDEBAR_CLICK_ACTION,\n } = OPTIMIZELY_VTR_BULLET_EXPERIMENT;\n const { formatMessage } = useIntl();\n\n const {\n org,\n userTimezone,\n verifiedMode,\n } = useModel('courseHomeMeta', courseId);\n\n const {\n marketingUrl,\n } = useModel('coursewareMeta', courseId);\n\n const {\n accessExpiration,\n datesBannerInfo,\n offer,\n timeOffsetMillis,\n } = useModel(model, courseId);\n\n const dateNow = Date.now();\n const timezoneFormatArgs = userTimezone ? { timeZone: userTimezone } : {};\n const correctedTime = new Date(dateNow + timeOffsetMillis);\n const accessExpirationDate = accessExpiration ? new Date(accessExpiration.expirationDate) : null;\n const pastExpirationDeadline = accessExpiration ? new Date(dateNow) > accessExpirationDate : false;\n const shouldDisplayBorder = pluginLocationId.includes('outline');\n const upsellPageName = pluginLocationId === 'outline_tab_notifications' ? 'course_home' : 'in_course';\n const setupgradeNotificationCurrentState = setNotificationCurrentState;\n const isFBE = !!accessExpiration && !!datesBannerInfo?.contentTypeGatingEnabled;\n\n const [decision] = useDecision(experimentKey);\n const { enabled, 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: experimentKey,\n variation_key: variationKey,\n };\n\n const eventProperties = {\n org_key: org,\n courserun_key: courseId,\n };\n\n const promotionEventProperties = {\n creative: 'sidebarupsell',\n name: 'In-Course Verification Prompt',\n position: 'sidebar-message',\n promotion_id: 'courseware_verified_certificate_upsell',\n ...eventProperties,\n ...experimentProperties,\n };\n\n useEffect(() => {\n sendTrackingLogEvent('edx.bi.course.upgrade.sidebarupsell.displayed', eventProperties);\n sendTrackEvent('Promotion Viewed', promotionEventProperties);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n if (!verifiedMode) {\n return null;\n }\n\n const logClick = () => {\n sendTrackingLogEvent('edx.bi.course.upgrade.sidebarupsell.clicked', eventProperties);\n sendTrackingLogEvent('edx.course.enrollment.upgrade.clicked', {\n ...eventProperties,\n location: 'sidebar-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(ANY_CLICK_ACTION);\n optimizely.track(SIDEBAR_CLICK_ACTION);\n };\n\n const logClickPastExpiration = () => {\n sendTrackEvent('edx.bi.ecommerce.upgrade_notification.past_expiration.button_clicked', {\n ...eventProperties,\n ...experimentProperties,\n linkCategory: 'upgrade_notification',\n linkName: `${upsellPageName}_course_details`,\n linkType: 'button',\n pageName: upsellPageName,\n });\n };\n\n /*\n There are 5 parts that change in the upgrade card:\n upgradeNotificationHeaderText\n expirationBanner\n upsellMessage\n callToActionButton\n offerCode\n */\n let upgradeNotificationHeaderText;\n let expirationBanner;\n let upsellMessage = getBulletVariation({\n enabled,\n variationKey,\n isFBE,\n enabledVariation: (\n <ExperimentalUpsellBullets {...{ isFBE }} />\n ),\n });\n let callToActionButton;\n let offerCode;\n\n if (isFBE) {\n const hoursToAccessExpiration = Math.floor((accessExpirationDate - correctedTime) / 1000 / 60 / 60);\n\n if (hoursToAccessExpiration >= (7 * 24)) {\n if (offer) { // countdown to the first purchase discount if there is one\n const hoursToDiscountExpiration = Math.floor((new Date(offer.expirationDate) - correctedTime) / 1000 / 60 / 60);\n upgradeNotificationHeaderText = formatMessage(\n messages.firstTimeLearnerDiscountHeader,\n { percentage: (offer.percentage) },\n );\n expirationBanner = (\n <ExpirationCountdown\n courseId={courseId}\n hoursToExpiration={hoursToDiscountExpiration}\n setupgradeNotificationCurrentState={setupgradeNotificationCurrentState}\n type=\"offer\"\n />\n );\n } else {\n upgradeNotificationHeaderText = formatMessage(messages.accessExpirationHeader);\n expirationBanner = (\n <AccessExpirationDateBanner\n courseId={courseId}\n accessExpirationDate={accessExpirationDate}\n timezoneFormatArgs={timezoneFormatArgs}\n setupgradeNotificationCurrentState={setupgradeNotificationCurrentState}\n />\n );\n }\n } else if (hoursToAccessExpiration < (7 * 24) && hoursToAccessExpiration >= 0) {\n // more urgent messaging if there's less than 7 days left to access expiration\n upgradeNotificationHeaderText = formatMessage(messages.accessExpirationUrgentHeader);\n expirationBanner = (\n <ExpirationCountdown\n courseId={courseId}\n hoursToExpiration={hoursToAccessExpiration}\n setupgradeNotificationCurrentState={setupgradeNotificationCurrentState}\n type=\"access\"\n />\n );\n if (variationKey === VARIATIONS.CONTROL) {\n upsellMessage = (\n <UpsellFBESoonCardContent\n accessExpirationDate={accessExpirationDate}\n timezoneFormatArgs={timezoneFormatArgs}\n />\n );\n }\n } else { // access expiration deadline has passed\n upgradeNotificationHeaderText = formatMessage(messages.accessExpirationPastHeader);\n expirationBanner = (\n <PastExpirationDateBanner\n courseId={courseId}\n accessExpirationDate={accessExpirationDate}\n timezoneFormatArgs={timezoneFormatArgs}\n setupgradeNotificationCurrentState={setupgradeNotificationCurrentState}\n />\n );\n upsellMessage = (\n <PastExpirationCardContent />\n );\n }\n }\n\n if (pastExpirationDeadline) {\n callToActionButton = (\n <Button\n variant=\"primary\"\n onClick={logClickPastExpiration}\n href={marketingUrl}\n block\n >\n {formatMessage(messages.pastExpirationCallToActionLabel)}\n </Button>\n );\n } else {\n callToActionButton = (\n <UpgradeButton\n offer={offer}\n onClick={logClick}\n verifiedMode={verifiedMode}\n block\n />\n );\n }\n\n if (offer) { // if there's a first purchase discount, message the code at the bottom\n offerCode = (\n <div className=\"text-center discount-info\">\n {formatMessage(\n messages.discountCodeMessage,\n {\n code: (<span className=\"font-weight-bold\">{offer.code}</span>),\n },\n )}\n </div>\n );\n }\n\n return (\n <section className={classNames('upgrade-notification small', { 'pgn__card pgn__card-light card mb-4 rounded': shouldDisplayBorder })}>\n <div id=\"courseHome-upgradeNotification\">\n <h2\n className={classNames('upgrade-notification-header', {\n 'd-flex align-items-center mr-2 ml-4 my-1.5 font-size-18': !!toggleSidebar,\n })}\n id=\"outline-sidebar-upgrade-header\"\n >\n {formatMessage(messages.pursueCertificateMessage)}\n {!!toggleSidebar && (\n <div className=\"d-inline-flex ml-auto\">\n <IconButton\n src={Close}\n size=\"sm\"\n iconAs={Icon}\n onClick={toggleSidebar}\n className=\"icon-hover\"\n alt={formatMessage(messages.closeAlt)}\n />\n </div>\n )}\n </h2>\n <CertificatePreview courseId={courseId} />\n <h3 className=\"ml-4\">\n {upgradeNotificationHeaderText}\n </h3>\n {expirationBanner}\n <div className=\"upgrade-notification-message\">\n {upsellMessage}\n </div>\n <div className=\"upgrade-notification-button\">\n {callToActionButton}\n </div>\n {offerCode}\n </div>\n </section>\n );\n};\n\nExperimentalUpgradeNotification.propTypes = {\n id: PropTypes.string.isRequired,\n courseId: PropTypes.string.isRequired,\n model: PropTypes.string,\n setNotificationCurrentState: PropTypes.func,\n toggleSidebar: PropTypes.func,\n /* eslint-disable-next-line react/forbid-prop-types */\n optimizely: PropTypes.object.isRequired,\n};\n\nExperimentalUpgradeNotification.defaultProps = {\n setNotificationCurrentState: null,\n toggleSidebar: null,\n model: 'outline',\n};\n\nexport default withOptimizely(ExperimentalUpgradeNotification);\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -19,7 +19,7 @@ const UpgradeNotification = props => /*#__PURE__*/(0, _jsxRuntime.jsx)(_optimize
|
|
|
19
19
|
defaultComponent: _DefaultUpgradeNotification.default,
|
|
20
20
|
experimentalComponent: _ExperimentalUpgradeNotification.default,
|
|
21
21
|
defaultVariationKey: "off",
|
|
22
|
-
experimentKey: _optimizely2.
|
|
22
|
+
experimentKey: _optimizely2.OPTIMIZELY_VTR_BULLET_EXPERIMENT.KEY
|
|
23
23
|
}, props));
|
|
24
24
|
var _default = exports.default = UpgradeNotification;
|
|
25
25
|
//# sourceMappingURL=UpgradeNotification.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpgradeNotification.js","names":["_DefaultUpgradeNotification","_interopRequireDefault","require","_ExperimentalUpgradeNotification","_optimizely","_optimizely2","_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","UpgradeNotification","props","jsx","defaultComponent","DefaultUpgradeNotification","experimentalComponent","ExperimentalUpgradeNotification","defaultVariationKey","experimentKey","
|
|
1
|
+
{"version":3,"file":"UpgradeNotification.js","names":["_DefaultUpgradeNotification","_interopRequireDefault","require","_ExperimentalUpgradeNotification","_optimizely","_optimizely2","_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","UpgradeNotification","props","jsx","defaultComponent","DefaultUpgradeNotification","experimentalComponent","ExperimentalUpgradeNotification","defaultVariationKey","experimentKey","OPTIMIZELY_VTR_BULLET_EXPERIMENT","KEY","_default","exports"],"sources":["../../src/upgrade-notification/UpgradeNotification.jsx"],"sourcesContent":["import DefaultUpgradeNotification from './DefaultUpgradeNotification';\nimport ExperimentalUpgradeNotification from './ExperimentalUpgradeNotification';\n\nimport OptimizelyExperiment from '../optimizely';\nimport { OPTIMIZELY_VTR_BULLET_EXPERIMENT } from '../data/optimizely';\n\nconst UpgradeNotification = (props) => (\n <OptimizelyExperiment\n defaultComponent={DefaultUpgradeNotification}\n experimentalComponent={ExperimentalUpgradeNotification}\n defaultVariationKey=\"off\"\n experimentKey={OPTIMIZELY_VTR_BULLET_EXPERIMENT.KEY}\n {...props}\n />\n);\n\nexport default UpgradeNotification;\n"],"mappings":";;;;;;AAAA,IAAAA,2BAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,gCAAA,GAAAF,sBAAA,CAAAC,OAAA;AAEA,IAAAE,WAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AAAsE,IAAAI,WAAA,GAAAJ,OAAA;AAAA,SAAAD,uBAAAM,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAAA,SAAAG,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,IAAAe,eAAA,CAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAgB,gBAAApB,GAAA,EAAAwB,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAxB,GAAA,IAAAO,MAAA,CAAAgB,cAAA,CAAAvB,GAAA,EAAAwB,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAZ,UAAA,QAAAc,YAAA,QAAAC,QAAA,oBAAA5B,GAAA,CAAAwB,GAAA,IAAAC,KAAA,WAAAzB,GAAA;AAAA,SAAA0B,eAAApB,CAAA,QAAAuB,CAAA,GAAAC,YAAA,CAAAxB,CAAA,uCAAAuB,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAxB,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAAyB,MAAA,CAAAC,WAAA,kBAAA5B,CAAA,QAAAyB,CAAA,GAAAzB,CAAA,CAAA6B,IAAA,CAAA3B,CAAA,EAAAD,CAAA,uCAAAwB,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAA7B,CAAA,GAAA8B,MAAA,GAAAC,MAAA,EAAA9B,CAAA;AAEtE,MAAM+B,mBAAmB,GAAIC,KAAK,iBAChC,IAAAvC,WAAA,CAAAwC,GAAA,EAAC1C,WAAA,CAAAK,OAAoB,EAAAc,aAAA;EACnBwB,gBAAgB,EAAEC,mCAA2B;EAC7CC,qBAAqB,EAAEC,wCAAgC;EACvDC,mBAAmB,EAAC,KAAK;EACzBC,aAAa,EAAEC,6CAAgC,CAACC;AAAI,GAChDT,KAAK,CACV,CACF;AAAC,IAAAU,QAAA,GAAAC,OAAA,CAAA/C,OAAA,GAEamC,mBAAmB","ignoreList":[]}
|