starter-kit/src/app.jsx
Katerina Koukiou d2e6145ae1 Use whole path in patternfly imports
Otherwise we rely on treeshaking mechanisms to remove unused code, thus
making our bundle size more vulnerable to bundler's ability to drop dead
code.
2023-02-23 16:36:08 +01:00

50 lines
1.6 KiB
JavaScript

/*
* This file is part of Cockpit.
*
* Copyright (C) 2017 Red Hat, Inc.
*
* Cockpit is free software; you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation; either version 2.1 of the License, or
* (at your option) any later version.
*
* Cockpit is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Cockpit; If not, see <http://www.gnu.org/licenses/>.
*/
import cockpit from 'cockpit';
import React from 'react';
import { Alert } from "@patternfly/react-core/dist/esm/components/Alert/index.js";
import { Card, CardBody, CardTitle } from "@patternfly/react-core/dist/esm/components/Card/index.js";
const _ = cockpit.gettext;
export class Application extends React.Component {
constructor() {
super();
this.state = { hostname: _("Unknown") };
cockpit.file('/etc/hostname').watch(content => {
this.setState({ hostname: content.trim() });
});
}
render() {
return (
<Card>
<CardTitle>Starter Kit</CardTitle>
<CardBody>
<Alert
variant="info"
title={ cockpit.format(_("Running on $0"), this.state.hostname) }
/>
</CardBody>
</Card>
);
}
}