Skip to content

Commit 77db61a

Browse files
Telemetry usage collection welcome screen (#53084) (#53606)
* Changes text dynamically based on the value of optIn in kibana.yml
1 parent 3c797ec commit 77db61a

File tree

7 files changed

+346
-41
lines changed

7 files changed

+346
-41
lines changed

src/legacy/core_plugins/kibana/public/home/components/__snapshots__/home.test.js.snap

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/legacy/core_plugins/kibana/public/home/components/__snapshots__/welcome.test.tsx.snap

Lines changed: 262 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/legacy/core_plugins/kibana/public/home/components/home.js

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,7 @@ export class Home extends Component {
5151
chrome.getInjected('disableWelcomeScreen') ||
5252
props.localStorage.getItem(KEY_ENABLE_WELCOME) === 'false'
5353
);
54-
const showTelemetryDisclaimer = chrome.getInjected('telemetryNotifyUserAboutOptInDefault');
55-
54+
const currentOptInStatus = this.props.getOptInStatus();
5655
this.state = {
5756
// If welcome is enabled, we wait for loading to complete
5857
// before rendering. This prevents an annoying flickering
@@ -61,7 +60,7 @@ export class Home extends Component {
6160
isLoading: isWelcomeEnabled,
6261
isNewKibanaInstance: false,
6362
isWelcomeEnabled,
64-
showTelemetryDisclaimer,
63+
currentOptInStatus,
6564
};
6665
}
6766

@@ -220,14 +219,13 @@ export class Home extends Component {
220219
renderLoading() {
221220
return '';
222221
}
223-
224222
renderWelcome() {
225223
return (
226224
<Welcome
227225
onSkip={this.skipWelcome}
228226
urlBasePath={this.props.urlBasePath}
229-
showTelemetryDisclaimer={this.state.showTelemetryDisclaimer}
230227
onOptInSeen={this.props.onOptInSeen}
228+
currentOptInStatus={this.state.currentOptInStatus}
231229
/>
232230
);
233231
}
@@ -267,4 +265,5 @@ Home.propTypes = {
267265
urlBasePath: PropTypes.string.isRequired,
268266
mlEnabled: PropTypes.bool.isRequired,
269267
onOptInSeen: PropTypes.func.isRequired,
268+
getOptInStatus: PropTypes.func.isRequired,
270269
};

src/legacy/core_plugins/kibana/public/home/components/home.test.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,10 @@ describe('home', () => {
5656
setItem: sinon.mock(),
5757
},
5858
urlBasePath: 'goober',
59+
onOptInSeen() {
60+
return false;
61+
},
62+
getOptInStatus: jest.fn(),
5963
};
6064
});
6165

src/legacy/core_plugins/kibana/public/home/components/home_app.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export function HomeApp({ directories }) {
3333
const isCloudEnabled = chrome.getInjected('isCloudEnabled', false);
3434
const apmUiEnabled = chrome.getInjected('apmUiEnabled', true);
3535
const mlEnabled = chrome.getInjected('mlEnabled', false);
36-
const { setOptInNoticeSeen } = telemetryOptInProvider;
36+
const { setOptInNoticeSeen, getOptIn } = telemetryOptInProvider;
3737
const savedObjectsClient = chrome.getSavedObjectsClient();
3838

3939
const renderTutorialDirectory = props => {
@@ -77,6 +77,7 @@ export function HomeApp({ directories }) {
7777
localStorage={localStorage}
7878
urlBasePath={chrome.getBasePath()}
7979
onOptInSeen={setOptInNoticeSeen}
80+
getOptInStatus={getOptIn}
8081
/>
8182
</Route>
8283
</Switch>

0 commit comments

Comments
 (0)