diff --git a/README.md b/README.md
index 6beb2c0a9..60fe87c7a 100644
--- a/README.md
+++ b/README.md
@@ -26,7 +26,7 @@
+
{ completed && }
{label}
diff --git a/frontend/app/components/Onboarding/components/OnboardingTabs/ProjectCodeSnippet/ProjectCodeSnippet.js b/frontend/app/components/Onboarding/components/OnboardingTabs/ProjectCodeSnippet/ProjectCodeSnippet.js
index 65c1527d6..a093c4f94 100644
--- a/frontend/app/components/Onboarding/components/OnboardingTabs/ProjectCodeSnippet/ProjectCodeSnippet.js
+++ b/frontend/app/components/Onboarding/components/OnboardingTabs/ProjectCodeSnippet/ProjectCodeSnippet.js
@@ -28,11 +28,10 @@ const codeSnippet = `
r.setMetadata=function(k,v){r.push([4,k,v])};
r.event=function(k,p,i){r.push([5,k,p,i])};
r.issue=function(k,p){r.push([6,k,p])};
- r.isActive=function(){return false};
- r.getSessionToken=function(){};
- r.i="https://${window.location.hostname}/ingest";
-})(0, "PROJECT_KEY", "//static.openreplay.com/${window.ENV.TRACKER_VERSION}/openreplay.js",1,XXX);
-`;
const ProjectCodeSnippet = props => {
diff --git a/frontend/app/components/shared/NoSessionsMessage/NoSessionsMessage.js b/frontend/app/components/shared/NoSessionsMessage/NoSessionsMessage.js
index 7639d9c4b..a3011db44 100644
--- a/frontend/app/components/shared/NoSessionsMessage/NoSessionsMessage.js
+++ b/frontend/app/components/shared/NoSessionsMessage/NoSessionsMessage.js
@@ -7,10 +7,9 @@ import * as routes from '../../../routes';
const withSiteId = routes.withSiteId;
const NoSessionsMessage= (props) => {
- const { site, sites, match: { params: { siteId } } } = props;
+ const { sites, match: { params: { siteId } } } = props;
const activeSite = sites.find(s => s.id == siteId);
const showNoSessions = !!activeSite && !activeSite.recorded;
- console.log('site', activeSite);
return (
<>
{showNoSessions && (
diff --git a/frontend/app/components/shared/TrackingCodeModal/ProjectCodeSnippet/ProjectCodeSnippet.js b/frontend/app/components/shared/TrackingCodeModal/ProjectCodeSnippet/ProjectCodeSnippet.js
index bac018a87..bacb71bfe 100644
--- a/frontend/app/components/shared/TrackingCodeModal/ProjectCodeSnippet/ProjectCodeSnippet.js
+++ b/frontend/app/components/shared/TrackingCodeModal/ProjectCodeSnippet/ProjectCodeSnippet.js
@@ -27,11 +27,10 @@ const codeSnippet = `
r.setMetadata=function(k,v){r.push([4,k,v])};
r.event=function(k,p,i){r.push([5,k,p,i])};
r.issue=function(k,p){r.push([6,k,p])};
- r.isActive=function(){return false};
- r.getSessionToken=function(){};
- r.i="https://${window.location.hostname}/ingest";
-})(0, "PROJECT_KEY", "//static.openreplay.com/${window.ENV.TRACKER_VERSION}/openreplay.js",1,XXX);
-`;
const ProjectCodeSnippet = props => {
diff --git a/frontend/app/types/account/account.js b/frontend/app/types/account/account.js
index 5314d24b7..fa672dfcc 100644
--- a/frontend/app/types/account/account.js
+++ b/frontend/app/types/account/account.js
@@ -1,6 +1,7 @@
import Member from 'Types/member';
import Appearance from './appearance';
import Limit from './limit';
+import { DateTime } from 'luxon';
export default Member.extend({
changePassword: undefined,
@@ -10,9 +11,13 @@ export default Member.extend({
email: '',
verifiedEmail: undefined,
smtp: false,
+ license: '',
+ expirationDate: undefined,
}, {
- fromJS: account => ({
+ fromJS: ({ current = {}, ...account})=> ({
...account,
+ license: current.license,
+ expirationDate: current.expirationDate && DateTime.fromMillis(current.expirationDate * 1000 || 0),
appearance: Appearance(account.appearance),
})
});
\ No newline at end of file
diff --git a/frontend/app/types/filter/filter.js b/frontend/app/types/filter/filter.js
index 8ff34b584..feaa44a20 100644
--- a/frontend/app/types/filter/filter.js
+++ b/frontend/app/types/filter/filter.js
@@ -75,7 +75,7 @@ export const defaultFilters = [
{ label: 'Click', key: KEYS.CLICK, type: KEYS.CLICK, filterKey: KEYS.CLICK, icon: 'filters/click', isFilter: false },
{ label: 'Input', key: KEYS.INPUT, type: KEYS.INPUT, filterKey: KEYS.INPUT, icon: 'event/input', isFilter: false },
{ label: 'Page', key: KEYS.LOCATION, type: KEYS.LOCATION, filterKey: KEYS.LOCATION, icon: 'event/link', isFilter: false },
- { label: 'View', key: KEYS.VIEW, type: KEYS.VIEW, filterKey: KEYS.VIEW, icon: 'event/view', isFilter: false }
+ // { label: 'View', key: KEYS.VIEW, type: KEYS.VIEW, filterKey: KEYS.VIEW, icon: 'event/view', isFilter: false }
]
},
{
diff --git a/static/deploy-azure.png b/static/deploy-azure.png
index b18dcbd7a..a0e81b99d 100644
Binary files a/static/deploy-azure.png and b/static/deploy-azure.png differ
diff --git a/static/replayer.png b/static/replayer.png
index f32a8961e..d7d3478c2 100644
Binary files a/static/replayer.png and b/static/replayer.png differ
diff --git a/tests/e2e/app.test.js b/tests/e2e/app.test.js
index 65af074f8..0f1a7eba8 100644
--- a/tests/e2e/app.test.js
+++ b/tests/e2e/app.test.js
@@ -25,6 +25,13 @@ beforeAll(async () => {
await page.setJavaScriptEnabled(true);
await page.setDefaultNavigationTimeout(10000);
await page.setRequestInterception(true);
+
+ await page.evaluate(async () => {
+ const response = await fetch(appUrlBase + '/API_TESTING/update');
+ const text = await response.text();
+ return text;
+ });
+
page.on('request', (req) => {
if (['image', 'font'].indexOf(req.resourceType()) !== -1) {
req.abort();