blob: 11342b04a25bbcb63163d0d0d4b27e62dbff3d56 [file] [log] [blame]
// Copyright (C) 2018 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
import m from 'mithril';
import {channelChanged, getNextChannel, setChannel} from '../common/channels';
import {globals} from './globals';
import {createPage} from './pages';
export const HomePage = createPage({
view() {
return m(
'.page.home-page',
m(
'.home-page-center',
m('.home-page-title', 'Perfetto'),
m(`img.logo[src=${globals.root}assets/logo-3d.png]`),
m(
'div.channel-select',
m('div',
'Feeling adventurous? Try our bleeding edge Canary version'),
m(
'fieldset',
mkChan('stable'),
mkChan('canary'),
m('.highlight'),
),
m(`.home-page-reload${channelChanged() ? '.show' : ''}`,
'You need to reload the page for the changes to have effect'),
),
),
m('a.privacy',
{href: 'https://policies.google.com/privacy', target: '_blank'},
'Privacy policy'));
},
});
function mkChan(chan: string) {
const checked = getNextChannel() === chan ? '[checked=true]' : '';
return [
m(`input[type=radio][name=chan][id=chan_${chan}]${checked}`, {
onchange: () => {
setChannel(chan);
},
}),
m(`label[for=chan_${chan}]`, chan),
];
}