forked from cerc-io/laconic-console
Merge branch 'master' into burdon/tables
This commit is contained in:
commit
c134a05926
@ -1,5 +1,5 @@
|
||||
# Console
|
||||
|
||||
DXOS Network GraphQL server and console application.
|
||||
DXOS Kubenet GraphQL server and console application.
|
||||
|
||||
![Console](./docs/images/console.png)
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0-beta.17",
|
||||
"version": "1.0.0-beta.19",
|
||||
"useWorkspaces": true,
|
||||
"npmClient": "yarn"
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@dxos/console",
|
||||
"version": "1.0.0-beta.0",
|
||||
"description": "DXOS Console",
|
||||
"description": "Kubenet Console",
|
||||
"main": "index.js",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
|
@ -1,5 +1,5 @@
|
||||
name: dxos.network/console-app
|
||||
displayName: DXOS Console Client
|
||||
displayName: Kubenet Console Client
|
||||
build: yarn dist
|
||||
version: 0.0.6
|
||||
package: QmZpM8u7ZUfQpXLgtdB1ug7nGExUrXhebtTSfSBPrRwcLX
|
||||
|
@ -1,11 +1,11 @@
|
||||
#
|
||||
# NODE_ENV === production
|
||||
# NODE_ENV=development
|
||||
# NOTE: Set CONFIG_FILE to swap out this config file.
|
||||
#
|
||||
|
||||
app:
|
||||
title: 'Console'
|
||||
org': 'DXOS'
|
||||
title: 'Kubenet Console'
|
||||
org': 'DXOS.org'
|
||||
theme: 'dark'
|
||||
website: 'https://dxos.org'
|
||||
publicUrl: '/console'
|
||||
|
@ -1,11 +1,11 @@
|
||||
#
|
||||
# NODE_ENV === production
|
||||
# NODE_ENV=development
|
||||
# NOTE: Set CONFIG_FILE to swap out this config file.
|
||||
#
|
||||
|
||||
app:
|
||||
title: 'Console'
|
||||
org': 'DXOS'
|
||||
title: 'Kubenet Console'
|
||||
org': 'DXOS.org'
|
||||
theme: 'dark'
|
||||
website: 'https://dxos.org'
|
||||
publicUrl: '/console'
|
||||
|
@ -1,11 +1,11 @@
|
||||
#
|
||||
# NODE_ENV === production
|
||||
# NODE_ENV=production
|
||||
# NOTE: Set CONFIG_FILE to swap out this config file.
|
||||
#
|
||||
|
||||
app:
|
||||
title: 'Console'
|
||||
org': 'DXOS'
|
||||
title: 'Kubenet Console'
|
||||
org': 'DXOS.org'
|
||||
theme: 'dark'
|
||||
website: 'https://dxos.org'
|
||||
publicUrl: '/console'
|
||||
|
@ -1,11 +1,11 @@
|
||||
#
|
||||
# NODE_ENV === production
|
||||
# NODE_ENV=development
|
||||
# NOTE: Set CONFIG_FILE to swap out this config file.
|
||||
#
|
||||
|
||||
app:
|
||||
title: 'Console'
|
||||
org': 'DXOS'
|
||||
title: 'Kubenet Console'
|
||||
org': 'DXOS.org'
|
||||
theme: 'dark'
|
||||
website: 'https://dxos.org'
|
||||
publicUrl: '/console'
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@dxos/console-app",
|
||||
"version": "1.0.0-beta.17",
|
||||
"description": "DXOS Console Client",
|
||||
"version": "1.0.0-beta.19",
|
||||
"description": "Kubenet Console Client",
|
||||
"main": "dist/es/index.js",
|
||||
"files": [
|
||||
"src/gql"
|
||||
@ -10,10 +10,10 @@
|
||||
"analyzer": "webpack --config webpack-analyzer.config.js",
|
||||
"build:babel": "babel ./src --out-dir ./dist/es --ignore \"**/*.test.js\" --source-maps inline",
|
||||
"build": "yarn dist",
|
||||
"dist": "yarn clean && cp -f config-production.yml config.yml && yarn build:babel && webpack",
|
||||
"dist": "yarn clean && yarn build:babel && CONFIG_FILE=config-production.yml webpack",
|
||||
"clean": "rm -rf dist",
|
||||
"lint": "semistandard 'src/**/*.js'",
|
||||
"start": "cp -f ${CONFIG_FILE:-config-local.yml} config.yml && VERBOSE=true webpack-dev-server --mode development",
|
||||
"start": "CONFIG_FILE=${CONFIG_FILE:-config-testnet.yml} VERBOSE=true webpack-dev-server --mode development",
|
||||
"test": "jest --rootDir ./src --passWithNoTests --no-cache"
|
||||
},
|
||||
"author": "DXOS.org",
|
||||
|
@ -11,27 +11,31 @@ import Typography from '@material-ui/core/Typography';
|
||||
import blueGrey from '@material-ui/core/colors/blueGrey';
|
||||
import GraphQLIcon from '@material-ui/icons/Adb';
|
||||
|
||||
import DxOSIcon from '../icons/DXOS';
|
||||
import DXOSIcon from '../icons/DXOS';
|
||||
import { graphqlApi } from '../client';
|
||||
|
||||
const useStyles = makeStyles((theme) => ({
|
||||
offset: theme.mixins.denseToolbar,
|
||||
|
||||
logo: {
|
||||
paddingBottom: 2,
|
||||
marginTop: 4,
|
||||
marginRight: theme.spacing(2),
|
||||
color: '#333',
|
||||
color: theme.palette.grey[800],
|
||||
|
||||
'& svg': {
|
||||
width: 64,
|
||||
height: 32
|
||||
width: 100,
|
||||
height: 48
|
||||
}
|
||||
},
|
||||
|
||||
logoLink: {
|
||||
lineHeight: 0
|
||||
},
|
||||
|
||||
title: {
|
||||
display: 'flex',
|
||||
flex: 1
|
||||
flex: 1,
|
||||
marginTop: 2,
|
||||
color: theme.palette.grey[800]
|
||||
},
|
||||
|
||||
link: {
|
||||
@ -46,9 +50,9 @@ const AppBar = ({ config }) => {
|
||||
<>
|
||||
<MuiAppBar position='fixed'>
|
||||
<Toolbar>
|
||||
<Link href='/'>
|
||||
<Link classes={{ root: classes.logoLink }} href='/'>
|
||||
<div className={classes.logo}>
|
||||
<DxOSIcon />
|
||||
<DXOSIcon />
|
||||
</div>
|
||||
</Link>
|
||||
<div className={classes.title}>
|
||||
|
@ -1,5 +1,5 @@
|
||||
//
|
||||
// Copyright 2020 DXOS.org.org
|
||||
// Copyright 2020 DXOS.org
|
||||
//
|
||||
|
||||
import React from 'react';
|
||||
|
@ -1,5 +1,5 @@
|
||||
//
|
||||
// Copyright 2020 DXOS.org.org
|
||||
// Copyright 2020 DXOS.org
|
||||
//
|
||||
|
||||
import React from 'react';
|
||||
|
@ -1,34 +1,33 @@
|
||||
//
|
||||
// Copyright 2020 DXOS.org.org
|
||||
// Copyright 2020 DXOS.org
|
||||
//
|
||||
|
||||
import React from 'react';
|
||||
|
||||
import ExitToApp from '@material-ui/icons/ExitToApp';
|
||||
import Link from '@material-ui/core/Link';
|
||||
import LinkIcon from '@material-ui/icons/ExitToApp';
|
||||
|
||||
import { getServiceUrl } from '../util/config';
|
||||
|
||||
// TODO(burdon): print actual GRAPHQL query.
|
||||
const QUERY = `
|
||||
query {
|
||||
queryRecords(attributes: [{ key: "name", value: { string: "%NAME%" } }]) {
|
||||
id
|
||||
type
|
||||
name
|
||||
bondId
|
||||
createTime
|
||||
expiryTime
|
||||
owners
|
||||
attributes {
|
||||
key
|
||||
value {
|
||||
string
|
||||
json
|
||||
query {
|
||||
queryRecords(attributes: [{ key: "name", value: { string: "%NAME%" } }]) {
|
||||
id
|
||||
type
|
||||
name
|
||||
bondId
|
||||
createTime
|
||||
expiryTime
|
||||
owners
|
||||
attributes {
|
||||
key
|
||||
value {
|
||||
string
|
||||
json
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
`;
|
||||
|
||||
/**
|
||||
@ -42,20 +41,18 @@ const QueryLink = ({ config, name, text, icon = false }) => {
|
||||
const baseURL = getServiceUrl(config, 'wns.webui');
|
||||
const query = QUERY.replace('%NAME%', name);
|
||||
|
||||
// TODO(burdon): This doesn't work.
|
||||
// NOTE: Playground bug opens two tabs.
|
||||
const fullURL = encodeURI(`${baseURL}?query=${query}`);
|
||||
|
||||
console.log(fullURL);
|
||||
|
||||
if (icon) {
|
||||
return (
|
||||
<Link href={fullURL} target='WNS_GraphQL'>
|
||||
<ExitToApp />
|
||||
</Link>
|
||||
);
|
||||
}
|
||||
return (
|
||||
<Link href={fullURL} target='wns'>{text || name}</Link>
|
||||
<Link href={fullURL} target='gql'>
|
||||
{icon && (
|
||||
<LinkIcon />
|
||||
)}
|
||||
{!icon && (
|
||||
text || name
|
||||
)}
|
||||
</Link>
|
||||
);
|
||||
};
|
||||
|
||||
|
@ -17,6 +17,9 @@ const useStyles = makeStyles(() => ({
|
||||
},
|
||||
medium: {
|
||||
width: 170
|
||||
},
|
||||
large: {
|
||||
width: 400
|
||||
}
|
||||
}));
|
||||
|
||||
|
8
packages/console-app/src/config.js
Normal file
8
packages/console-app/src/config.js
Normal file
@ -0,0 +1,8 @@
|
||||
//
|
||||
// Copyright 2020 DXOS.org
|
||||
//
|
||||
|
||||
// See webpack-common.config.js
|
||||
import config from '__CONFIG_FILE__';
|
||||
|
||||
export default config;
|
@ -55,6 +55,7 @@ const Layout = ({ children }) => {
|
||||
<FullScreen>
|
||||
<div className={classes.root}>
|
||||
<AppBar config={config} />
|
||||
|
||||
<div className={classes.container}>
|
||||
<div className={classes.sidebar}>
|
||||
<Sidebar modules={modules} />
|
||||
@ -63,6 +64,7 @@ const Layout = ({ children }) => {
|
||||
{children}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className={classes.footer}>
|
||||
<StatusBar />
|
||||
</div>
|
||||
|
@ -30,14 +30,12 @@ const AppRecords = () => {
|
||||
|
||||
// TODO(telackey): Does this also need an interval?
|
||||
const ipfsResponse = useQueryStatusReducer(useQuery(IPFS_STATUS));
|
||||
|
||||
if (!appResponse || !ipfsResponse) {
|
||||
return null;
|
||||
}
|
||||
|
||||
const appData = JSON.parse(appResponse.wns_records.json);
|
||||
const ipfsData = JSON.parse(ipfsResponse.ipfs_status.json);
|
||||
|
||||
const localRefs = new Set(ipfsData.refs.local);
|
||||
|
||||
return (
|
||||
@ -45,23 +43,25 @@ const AppRecords = () => {
|
||||
<TableHead>
|
||||
<TableRow>
|
||||
<TableCell onClick={sortBy('name')}>Identifier</TableCell>
|
||||
<TableCell onClick={sortBy('attributes.displayName')}>Name</TableCell>
|
||||
<TableCell onClick={sortBy('version')} size='small'>Version</TableCell>
|
||||
<TableCell onClick={sortBy('attributes.displayName')}>Name</TableCell>
|
||||
<TableCell onClick={sortBy('createTime')} size='small'>Created</TableCell>
|
||||
<TableCell size='icon'>Downloaded</TableCell>
|
||||
<TableCell size='icon' />
|
||||
</TableRow>
|
||||
</TableHead>
|
||||
<TableBody>
|
||||
{appData.sort(sorter).map(({ id, name, version, createTime, attributes: { displayName, publicUrl, package: hash } }) => {
|
||||
{appData.sort(sorter).map(({ id, name, version, createTime, attributes: { displayName, package: hash } }) => {
|
||||
return (
|
||||
<TableRow key={id} size='small'>
|
||||
<TableCell monospace>
|
||||
<AppLink config={config} name={name} />
|
||||
</TableCell>
|
||||
<TableCell>{displayName}</TableCell>
|
||||
<TableCell monospace>
|
||||
<AppLink config={config} name={name} version={version} text={version} />
|
||||
</TableCell>
|
||||
<TableCell>
|
||||
{displayName}
|
||||
</TableCell>
|
||||
<TableCell>{moment.utc(createTime).fromNow()}</TableCell>
|
||||
<TableCell>
|
||||
<BooleanIcon yes={localRefs && localRefs.has(hash)} />
|
||||
|
@ -37,9 +37,9 @@ const BotRecords = () => {
|
||||
<TableRow>
|
||||
<TableCell onClick={sortBy('name')}>Identifier</TableCell>
|
||||
<TableCell onClick={sortBy('version')} size='small'>Version</TableCell>
|
||||
<TableCell onClick={sortBy('createTime')} size='small'>Created</TableCell>
|
||||
<TableCell onClick={sortBy('attributes.displayName')}>Name</TableCell>
|
||||
<TableCell />
|
||||
<TableCell onClick={sortBy('createTime')} size='small'>Created</TableCell>
|
||||
<TableCell size='icon' />
|
||||
</TableRow>
|
||||
</TableHead>
|
||||
<TableBody>
|
||||
@ -48,8 +48,8 @@ const BotRecords = () => {
|
||||
<TableRow key={id} size='small'>
|
||||
<TableCell monospace>{name}</TableCell>
|
||||
<TableCell monospace>{version}</TableCell>
|
||||
<TableCell>{moment.utc(createTime).fromNow()}</TableCell>
|
||||
<TableCell>{displayName}</TableCell>
|
||||
<TableCell>{moment.utc(createTime).fromNow()}</TableCell>
|
||||
<TableCell />
|
||||
</TableRow>
|
||||
);
|
||||
|
@ -109,14 +109,16 @@ const IPFSStatus = () => {
|
||||
displayServers.push({ name: 'None' });
|
||||
}
|
||||
|
||||
// TODO(burdon): Get Address (currenlty truncated).
|
||||
|
||||
return (
|
||||
<Table stickyHeader size='small' className={classes.table}>
|
||||
<TableHead>
|
||||
<TableRow>
|
||||
<TableCell>Identifier</TableCell>
|
||||
<TableCell size='medium'>Description</TableCell>
|
||||
<TableCell size='icon'>Connected</TableCell>
|
||||
<TableCell>Address</TableCell>
|
||||
<TableCell size='small'>Connected</TableCell>
|
||||
</TableRow>
|
||||
</TableHead>
|
||||
<TableBody>
|
||||
@ -125,10 +127,10 @@ const IPFSStatus = () => {
|
||||
<TableCell>{name}</TableCell>
|
||||
<TableCell>{description}</TableCell>
|
||||
<TableCell>
|
||||
<BooleanIcon yes={connected} />
|
||||
{ipfs.addresses}
|
||||
</TableCell>
|
||||
<TableCell>
|
||||
{ipfs.addresses}
|
||||
<BooleanIcon yes={connected} />
|
||||
</TableCell>
|
||||
</TableRow>
|
||||
))}
|
||||
|
@ -32,7 +32,7 @@ const SignalServers = () => {
|
||||
<TableHead>
|
||||
<TableRow>
|
||||
<TableCell>Server</TableCell>
|
||||
<TableCell>Peers</TableCell>
|
||||
<TableCell size='small' s>Peers</TableCell>
|
||||
</TableRow>
|
||||
</TableHead>
|
||||
<TableBody>
|
||||
|
@ -85,8 +85,8 @@ const WNSRecords = ({ type }) => {
|
||||
<TableRow>
|
||||
<TableCell onClick={sortBy('type')} size='medium'>Type</TableCell>
|
||||
<TableCell onClick={sortBy('name')}>Identifier</TableCell>
|
||||
<TableCell onClick={sortBy('attributes.displayName')}>Name</TableCell>
|
||||
<TableCell onClick={sortBy('version')} size='small'>Version</TableCell>
|
||||
<TableCell onClick={sortBy('attributes.displayName')}>Name</TableCell>
|
||||
<TableCell onClick={sortBy('createTime')} size='small'>Created</TableCell>
|
||||
<TableCell onClick={sortBy('package')}>Package</TableCell>
|
||||
<TableCell size='icon' />
|
||||
@ -116,12 +116,12 @@ const WNSRecords = ({ type }) => {
|
||||
<TableCell monospace>
|
||||
{appLink || name}
|
||||
</TableCell>
|
||||
<TableCell>
|
||||
{displayName || service || description}
|
||||
</TableCell>
|
||||
<TableCell monospace>
|
||||
{verLink || version}
|
||||
</TableCell>
|
||||
<TableCell>
|
||||
{displayName || service || description}
|
||||
</TableCell>
|
||||
<TableCell>
|
||||
{moment.utc(createTime).fromNow()}
|
||||
</TableCell>
|
||||
|
@ -6,34 +6,9 @@ import React from 'react';
|
||||
import SvgIcon from '@material-ui/core/SvgIcon';
|
||||
|
||||
const Icon = (props) => (
|
||||
<SvgIcon {...props} viewBox='0 0 512 256'>
|
||||
<g transform='matrix(1,0,0,1,-187.374,-7.5)'>
|
||||
<g transform='matrix(0.936373,0,0,0.906495,295.947,135.5)'>
|
||||
<path
|
||||
d='M0,-0.233C0,-27.435 -16.74,-48.591 -48.359,-48.591L-76.722,-48.591L-76.722,48.358L-48.59,48.358C-17.902,48.358 0,26.271 0,-0.233M-109.736,77.419L-109.736,-77.652L-48.59,-77.652C0,-77.652 33.711,-46.731 33.711,-0.233C33.711,46.73 0,77.419 -48.359,77.419L-109.736,77.419Z'
|
||||
/>
|
||||
</g>
|
||||
<g transform='matrix(0.936373,0,0,0.906495,530.058,135.499)'>
|
||||
<path
|
||||
d='M0,0.002C0,-29.06 -18.367,-50.914 -46.964,-50.914C-75.793,-50.914 -94.16,-29.06 -94.16,0.002C-94.16,28.83 -75.793,50.917 -46.964,50.917C-18.367,50.917 0,28.83 0,0.002M-128.104,0.002C-128.104,-46.729 -93.927,-80.208 -46.964,-80.208C-0.233,-80.208 33.942,-46.729 33.942,0.002C33.942,46.731 -0.233,80.21 -46.964,80.21C-93.927,80.21 -128.104,46.731 -128.104,0.002'
|
||||
/>
|
||||
</g>
|
||||
<g transform='matrix(0.936373,0,0,0.906495,573.603,85.3412)'>
|
||||
<path
|
||||
d='M0,110.898L18.134,85.092C29.062,96.484 46.034,106.249 67.422,106.249C85.789,106.249 94.392,98.111 94.392,89.044C94.392,62.075 5.115,80.907 5.115,22.551C5.115,-3.255 27.434,-24.644 63.935,-24.644C88.579,-24.644 109.039,-17.204 124.383,-3.022L106.017,21.622C93.462,9.997 76.723,4.65 60.913,4.65C46.964,4.65 39.059,10.695 39.059,19.994C39.059,44.406 128.103,27.898 128.103,85.789C128.103,114.153 107.644,135.542 66.028,135.542C36.036,135.542 14.648,125.544 0,110.898'
|
||||
/>
|
||||
</g>
|
||||
<g transform='matrix(0.936373,0,0,0.906495,368.158,65.109)'>
|
||||
<path
|
||||
d='M0,56.844L-36.496,0L36.496,0L0,56.844Z'
|
||||
/>
|
||||
</g>
|
||||
<g transform='matrix(0.936373,0,0,0.906495,368.158,205.681)'>
|
||||
<path
|
||||
d='M0,-56.845L-36.496,0L36.496,0L0,-56.845Z'
|
||||
/>
|
||||
</g>
|
||||
</g>
|
||||
<SvgIcon {...props} viewBox='0 0 3200 1067'>
|
||||
<path fill='none' d='M0 0h3200v1066.67H0z' />
|
||||
<path d='M1191.03 327.748v385.175h80.981c28.975 0 55.749-4.945 80.323-14.822 24.587-9.878 45.657-23.373 63.212-40.484 17.554-17.125 31.277-37.424 41.154-60.91 9.878-23.474 14.81-48.819 14.81-76.049 0-27.647-4.717-53.22-14.152-76.706-9.435-23.461-22.829-43.773-40.168-60.897-17.34-17.112-38.511-30.607-63.528-40.497-25.029-9.865-52.904-14.81-83.624-14.81h-79.008zm-51.361-47.403h134.327c37.297 0 71.319 6.147 102.052 18.428 30.72 12.306 57.052 29.202 79.008 50.703 21.943 21.513 38.954 46.858 51.02 76.049 12.065 29.202 18.111 60.897 18.111 95.133 0 34.237-6.261 66.07-18.769 95.475s-29.848 54.763-52.006 76.049c-22.171 21.298-48.402 38.081-78.692 50.374-30.278 12.281-63.199 18.427-98.751 18.427h-136.3V280.345zM1785.58 554.239l-135.63 206.747h-57.951l163.948-246.902-152.742-233.736h57.937l125.753 190.28 125.095-190.28h57.938l-153.4 230.435 163.278 250.203h-57.938L1785.58 554.239zM2301.11 718.848c27.66 0 53.334-5.274 77.035-15.81 23.702-10.535 44.216-24.789 61.555-42.786 17.34-17.997 30.948-38.954 40.826-62.882 9.878-23.917 14.81-49.49 14.81-76.707 0-27.204-4.932-52.777-14.81-76.706-9.878-23.916-23.486-44.873-40.826-62.883-17.339-17.984-37.853-32.251-61.555-42.786-23.701-10.535-49.375-15.809-77.035-15.809-27.659 0-53.334 5.274-77.035 15.809-23.701 10.535-44.228 24.802-61.555 42.786-17.352 18.01-30.948 38.967-40.825 62.883-9.878 23.929-14.81 49.502-14.81 76.706 0 27.217 4.932 52.79 14.81 76.707 9.877 23.928 23.473 44.885 40.825 62.882 17.327 17.997 37.854 32.251 61.555 42.786 23.701 10.536 49.376 15.81 77.035 15.81m0 48.717c-34.236 0-66.285-6.488-96.132-19.426-29.848-12.938-55.952-30.607-78.338-53.005-22.386-22.386-40.067-48.49-53.005-78.338-12.951-29.848-19.427-61.896-19.427-96.133 0-34.236 6.476-66.272 19.427-96.132 12.938-29.836 30.619-55.952 53.005-78.338 22.386-22.386 48.49-40.055 78.338-53.005 29.847-12.951 61.896-19.427 96.132-19.427 34.237 0 66.273 6.476 96.133 19.427 29.835 12.95 55.952 30.619 78.338 53.005 22.386 22.386 40.054 48.502 53.005 78.338 12.951 29.86 19.426 61.896 19.426 96.132 0 34.237-6.475 66.285-19.426 96.133-12.951 29.848-30.619 55.952-53.005 78.338-22.386 22.398-48.503 40.067-78.338 53.005-29.86 12.938-61.896 19.426-96.133 19.426M2802.16 767.565c-39.067 0-72.203-7.791-99.421-23.385-27.217-15.569-50.69-37.196-70.445-64.843l43.456-32.921c16.239 25.017 34.451 43.684 54.649 55.965 20.173 12.293 44.102 18.439 71.761 18.439 14.924 0 28.647-2.301 41.155-6.918 12.508-4.603 23.259-10.864 32.263-18.768 8.993-7.892 16.012-17.441 21.071-28.634 5.034-11.193 7.563-23.372 7.563-36.538 0-14.924-3.288-27.432-9.865-37.538-6.589-10.092-15.379-18.756-26.344-26.003-10.978-7.247-23.486-13.494-37.525-18.768a2454.437 2454.437 0 00-43.456-15.797 712.606 712.606 0 01-49.06-18.769c-16.024-6.791-30.277-15.24-42.786-25.345-12.521-10.093-22.714-22.272-30.619-36.538-7.905-14.266-11.851-31.935-11.851-53.005 0-17.555 3.719-33.908 11.193-49.047 7.462-15.151 17.77-28.317 30.949-39.51 13.165-11.193 28.734-19.97 46.732-26.332 17.997-6.362 37.537-9.549 58.607-9.549 34.237 0 63.212 6.362 86.913 19.098 23.701 12.736 44.329 30.505 61.884 53.334l-40.826 30.278c-24.586-38.183-60.796-57.28-108.628-57.28-13.609 0-26.117 1.973-37.525 5.931-11.433 3.946-21.399 9.536-29.962 16.783-8.562 7.247-15.252 15.696-20.084 25.346-4.831 9.662-7.247 19.982-7.247 30.948 0 14.051 3.188 25.788 9.549 35.223 6.362 9.447 14.823 17.681 25.358 24.687 10.535 7.032 22.715 13.065 36.538 18.111a4308.994 4308.994 0 0043.128 15.481 681.841 681.841 0 0149.375 19.085c16.24 7.032 30.835 15.695 43.786 26.003 12.938 10.32 23.473 22.942 31.605 37.866 8.107 14.924 12.18 33.364 12.18 55.307 0 17.997-3.617 35.223-10.864 51.69-7.247 16.454-17.681 31.049-31.277 43.772-13.609 12.736-29.848 22.942-48.718 30.619-18.883 7.677-39.953 11.522-63.212 11.522M893.472 909.428l-338.469-211.54 92.313-126.929 246.156 338.469zM398.96 570.959l92.313 126.929-338.469 211.54L398.96 570.959zM152.804 157.226l338.469 211.54-92.313 126.929-246.156-338.469zm392.473 273.423l74.67 102.684-74.67 102.672V430.649zm-44.266 205.356l-74.682-102.672 74.682-102.684v205.356zm146.305-140.31l-92.313-126.929 338.469-211.54-246.156 338.469zm349.03-404.653l-29.633-31.783L523.144 336.49 79.563 59.259 49.93 91.042l321.661 442.291L49.93 975.612l29.633 31.795 443.581-277.243 443.569 277.243 29.633-31.795-321.661-442.279L996.346 91.042z' fill-rule='nonzero' />
|
||||
</SvgIcon>
|
||||
);
|
||||
|
||||
|
@ -6,7 +6,7 @@ import debug from 'debug';
|
||||
import React from 'react';
|
||||
import { render } from 'react-dom';
|
||||
|
||||
import config from '../config.yml';
|
||||
import config from './config';
|
||||
|
||||
import Main from './containers/Main';
|
||||
|
||||
|
@ -14,7 +14,7 @@ export const createTheme = (theme) => createMuiTheme({
|
||||
// https://stackoverflow.com/questions/60567673/reactjs-material-ui-theme-mixins-toolbar-offset-is-not-adapting-when-toolbar
|
||||
mixins: {
|
||||
denseToolbar: {
|
||||
minHeight: 48
|
||||
height: 48
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"build": {
|
||||
"name": "@dxos/console-app",
|
||||
"buildDate": "2020-07-20T18:34:32.825Z",
|
||||
"version": "1.0.0-beta.17"
|
||||
"buildDate": "2020-07-20T22:54:23.462Z",
|
||||
"version": "1.0.0-beta.19"
|
||||
}
|
||||
}
|
||||
|
@ -9,8 +9,7 @@ const webpack = require('webpack');
|
||||
|
||||
const PUBLIC_URL = process.env.PUBLIC_URL || '';
|
||||
|
||||
// TODO(burdon): Remove.
|
||||
const STACK_CONFIG = process.env.CONFIG || 'default';
|
||||
const CONFIG_FILE = path.relative('./src', process.env.CONFIG_FILE || 'config-local.yml');
|
||||
|
||||
module.exports = {
|
||||
devtool: 'eval-source-map',
|
||||
@ -76,8 +75,8 @@ module.exports = {
|
||||
|
||||
// Define the build config file based on the target.
|
||||
// https://webpack.js.org/plugins/normal-module-replacement-plugin
|
||||
new webpack.NormalModuleReplacementPlugin(/(.*)__STACK_CONFIG__/, (resource) => {
|
||||
resource.request = resource.request.replace(/__STACK_CONFIG__/, STACK_CONFIG);
|
||||
new webpack.NormalModuleReplacementPlugin(/(.*)__CONFIG_FILE__/, (resource) => {
|
||||
resource.request = resource.request.replace(/__CONFIG_FILE__/, CONFIG_FILE);
|
||||
}),
|
||||
|
||||
// https://www.npmjs.com/package/webpack-version-file-plugin
|
||||
|
@ -15,7 +15,7 @@ module.exports = merge(commonConfig, {
|
||||
new HtmlWebPackPlugin({
|
||||
template: './public/index.html',
|
||||
templateParameters: {
|
||||
title: 'DXOS Console'
|
||||
title: 'Kubenet Console'
|
||||
}
|
||||
})
|
||||
]
|
||||
|
@ -1,11 +1,11 @@
|
||||
#
|
||||
# NODE_ENV === production
|
||||
# NODE_ENV=development
|
||||
# NOTE: Set CONFIG_FILE to swap out this config file.
|
||||
#
|
||||
|
||||
app:
|
||||
title: 'Console'
|
||||
org': 'DXOS'
|
||||
title: 'Kubenet Console'
|
||||
org': 'DXOS.org'
|
||||
theme: 'dark'
|
||||
website: 'https://dxos.org'
|
||||
publicUrl: '/console'
|
||||
|
@ -1,11 +1,11 @@
|
||||
#
|
||||
# NODE_ENV === production
|
||||
# NODE_ENV=development
|
||||
# NOTE: Set CONFIG_FILE to swap out this config file.
|
||||
#
|
||||
|
||||
app:
|
||||
title: 'Console'
|
||||
org': 'DXOS'
|
||||
title: 'Kubenet Console'
|
||||
org': 'DXOS.org'
|
||||
theme: 'dark'
|
||||
website: 'https://dxos.org'
|
||||
publicUrl: '/console'
|
||||
|
@ -1,11 +1,11 @@
|
||||
#
|
||||
# NODE_ENV === production
|
||||
# NODE_ENV=production
|
||||
# NOTE: Set CONFIG_FILE to swap out this config file.
|
||||
#
|
||||
|
||||
app:
|
||||
title: 'Console'
|
||||
org': 'DXOS'
|
||||
title: 'Kubenet Console'
|
||||
org': 'DXOS.org'
|
||||
theme: 'dark'
|
||||
website: 'https://dxos.org'
|
||||
publicUrl: '/console'
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@dxos/console-server",
|
||||
"version": "1.0.0-beta.17",
|
||||
"description": "DXOS Console Server",
|
||||
"version": "1.0.0-beta.19",
|
||||
"description": "Kubenet Console Server",
|
||||
"main": "dist/es/index.js",
|
||||
"bin": {
|
||||
"dxos-console": "bin/console.js"
|
||||
@ -31,7 +31,7 @@
|
||||
"dependencies": {
|
||||
"@babel/polyfill": "^7.8.7",
|
||||
"@babel/runtime": "^7.8.7",
|
||||
"@dxos/console-app": "^1.0.0-beta.17",
|
||||
"@dxos/console-app": "^1.0.0-beta.19",
|
||||
"@wirelineio/wns-schema": "^0.1.1",
|
||||
"apollo-boost": "^0.4.9",
|
||||
"apollo-server-express": "^2.13.1",
|
||||
|
@ -67,7 +67,7 @@ module.exports = {
|
||||
new HtmlWebPackPlugin({
|
||||
template: './public/index.html',
|
||||
templateParameters: {
|
||||
title: 'DXOS Console'
|
||||
title: 'Kubenet Console'
|
||||
}
|
||||
}),
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user