diff --git a/src/App.css b/src/App.css index 4c865e7..65e5766 100755 --- a/src/App.css +++ b/src/App.css @@ -1,443 +1,3 @@ body { font-family: 'Droid Sans', 'Arial Narrow', Arial, sans-serif; } - -.Cards { - position: absolute; - right: 0; - bottom: 0; - display: inline-block; - text-align: right; - vertical-align: bottom; - padding: 0.5em; -} - -.Stack { - position: relative; - display: inline-block; -} - -.Stack:not(:first-child) { - margin-left: -3em; - transition: margin-left 1s ease-in-out 0.25s; -} - -.Stack > * { - transition: margin-left 1s ease-in-out 0.25s, margin-right 1s ease-in-out 0.25s; -} - -.Development:hover, -.Placard:hover, -.Resource:hover { - filter: brightness(150%); -} - -.Stack > *:not(:first-child) { - margin-left: -4.5em; -} - -.Hand { - min-height: calc(7.2em + 0.5em); -} - -.Hand:hover .Stack:hover > *:not(:first-child) { - margin-left: -2em; -} - -.Hand:hover .Stack:hover:not(:last-child) > *:last-child { - margin-right: 3em; -} - -.Placard { - position: relative; - width: 9.4em; - height: 11.44em; - background-position: center; - background-repeat: no-repeat; - background-size: cover; - margin: 0.25em; - display: inline-block; -} - -.Development { - position: relative; - display: inline-block; - width: 4.9em; - height: 7.2em; - background-position: center; - background-repeat: no-repeat; - background-size: cover; - margin: 0.25em; -} - -.Resource { - position: relative; - width: 4.9em; - height: 7.2em; - display: inline-block; - background-position: center; - background-repeat: no-repeat; - background-size: cover; - margin: 0.25em; -} - -.Statistics > div:nth-child(2) { - display: flex; - flex-direction: row; - border: 1px solid black; -} - -.Statistics div:nth-child(2) div { - padding: 0.25em 0.5em; -} - -.MarkdownLoader { - position: relative; -} - -.gitlab-banner { - display: inline-block; - position: absolute; - top: 0px; - right: 0px; - overflow: hidden; - background-color: #252525; - box-sizing: border-box; - cursor: pointer; - height: 1.5em; - line-height: 0.9em; - opacity: 0.25; - transition: opacity 0.5s ease-out; - text-decoration: none; - padding: 0.25em 0.5em; -} - -.gitlab-banner:hover { - opacity: 1; -} - -.gitlab-banner a { - text-decoration: none; - color: #fff; - white-space: nowrap; - font-variant: all-small-caps; -} - -.gitlab-banner:hover a { - text-decoration: underline; -} - -#spinner { - display: none; - position: fixed; - left: 50%; - top: 50%; - width: 60px; - height: 60px; - margin-left: -30px; - margin-top: -30px; - z-index: 100; - background-image: url(../assets/vtt-logo.png); - background-color: #0071C5; - border-radius: 50%; -} - -.Logo { - width: 52px; - height: 52px; - background-image: url(../assets/vtt.svg); - background-color: #252525; - background-repeat: no-repeat; - background-position: center center; - background-size: 95% 95%; - border-radius: 50%; - display: inline-block; -} - -#spinner.spin { - display: inline-block; - -webkit-animation:spin 1s linear infinite; - -moz-animation:spin 1s linear infinite; - animation:spin 1s linear infinite; -} - -@-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } } -@-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } } -@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } } - -.Header { - background-color: #252525; - color: #ffffff; - position: fixed; - top: 0; - left: 0; - right: 0; - z-index: 20; - display: flex; - box-sizing: border-box; - flex-direction: column; - user-select: none; -} - -.Header .Group { - height: 60px; - display: flex; - padding-left: 1em; - padding-right: calc(1em + 52px); - background-color: #0071C5; - align-items: center; -} - -.Header .Group .Subtitle { - font-size: 0.7em; - line-height: 1.5em; -} - -.Header .Group .Heading { - margin: 0 auto; - width: calc(100% - 8em); - max-width: 90em; -} - -.Header .Pages { - height: 60px; - display: flex; - margin: 0 auto; - width: calc(100% - 8em); - max-width: 90em; -/* justify-content: space-between;*/ - font-size: 1.2em; - align-items: center; -} - -.Header .Pages .Link { - display: inline-flex; - align-items: center; - height: 100%; - box-sizing: border-box; - padding: 0.5em 1em; - border-bottom: 3px solid transparent; - cursor: pointer; -} - -.Header .Pages .Link.Highlight { - border-bottom-color: #0071C5 !important; -} - -.Header .Pages .Link.Active, -.Header .Pages .Link:hover { - border-bottom-color: #003663; - /*border-bottom-color: #00A7FF;*/ -} - -a.Link { - font-family: Oswald; - text-decoration: none; - color: white; -} - -.Footer { - position: fixed; - background-color: #252525; - color: #ffffff; - height: 64px; - bottom: 0; - left: 0; - right: 0; - font-size: 0.9em; - font-family: Droid Sans; - z-index: 20; -} - -.Footer .Copyright { - position: absolute; - line-height: 64px; - text-align: center; - left: 64px; - right: 64px; -} - -.Footer .Lizard { - position: absolute; - width: 100px; - height: 64px; - right: 1em; - background-image: url(../assets/agama.png); - background-repeat: no-repeat; - background-position: 98% center; - background-size: auto 40px; - cursor: pointer; -} - -.Body { - position: absolute; - /* .Header's two 60px chunks */ - /* - margin-top: 120px; - */ - /* .Footer's 64 px */ - /* - margin-bottom: 64px; - */ - top: 0; - bottom: 0; - left: 0; - right: 0; - box-sizing: border-box; - background-image: linear-gradient(#090B1A, #131524); - color: #ffffff; - z-index: 0; -} - -.Body > * { - box-sizing: border-box; -} - -.popup { - position: fixed; - display: none; - width: 100%; - height: 100%; - z-index: 0; - background: rgba(0, 0, 0, 0.5); - padding: 5em; - z-index: 1000; -} - -.popped-up { - display: inline-block; -} - -.Board { - position: relative; - display: inline-block; - width: 100%; - height: 100%; - z-index: 0; - pointer-events: none; - opacity: 1; - transition: opacity 1.5s ease-in-out; -} - -.Board.NoBackground { - opacity: 0; -} - -.Index { - display: none; - position: absolute; - background-color: #fff; - top: 0; - left: 0; - bottom: 0; - width: 12em; - margin-right: 1em; -} - -.Index > div { - padding: 0.25em 0.5em; - cursor: pointer; - color: #444; -} - -.Index div.story { - font-size: 0.9em; - padding-left: 0.5em; -} - -.Index div.topic { - font-size: 1em; -} - -.Index .active { - color: black; - font-weight: bold; -} - -.Index div.inactive:hover { - text-decoration: underline; -} - -.Main { - display: inline-flex; - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; - background-image: url(../assets/vtt-logo.png); - background-repeat: no-repeat; - background-position: center; -} - - -.Main.NoBackground { - background-image: none; -} - -.Content { - position: relative; - box-sizing: border-box; - margin: 1em auto; - width: calc(100% - 8em); - max-width: 90em; - color: black; - z-index: 10; - background-color: #fff; - overflow-y: scroll; - scroll-behavior: smooth; - padding: 1.5em 1.5em 0 1.5em; - box-sizing: border-box; - transition: top 1s ease-in-out; - top: -100%; -} - -.Content #MinBox { - position: relative; - box-sizing: border-box; - min-height: calc(100% - 2.5em); - padding-bottom: 1.3em; -} - -.OnScreen { - top: 0px; -} - -.Markdown pre { - max-width: 100ex; -} - -.Markdown h1 { - margin-top: 1em; - font-size: 1.0em; - font-weight: bold; -} - -.Markdown h2 { - margin-top: 0.8em; - font-size: 1.0em; - font-weight: bold; -} - -.Markdown h1:first-child, -.Markdown h2:first-child { - margin-top: 0; -} - -.Markdown th { - font-variant-caps: all-small-caps; - font-size: 1.1em; - font-weight: normal; - padding: 0.25em 0.5em; -} - -.Markdown table { - border-collapse: collapse; - margin: 0 1em; -} - -.Markdown td { - vertical-align: top; - padding: 0.25em 0.5em; - border: 1px solid #f0f0f0; -} diff --git a/src/App.js b/src/App.js index f0b3484..76e8737 100755 --- a/src/App.js +++ b/src/App.js @@ -6,60 +6,28 @@ import 'core-js/features/number/is-nan'; /* App starts here */ import React from "react"; -import { withRouter, NavLink, Route, Switch } from "react-router-dom"; import Button from '@material-ui/core/Button'; import AppBar from '@material-ui/core/AppBar'; +import Box from '@material-ui/core/Box'; import Toolbar from '@material-ui/core/Toolbar'; -import IconButton from '@material-ui/core/IconButton'; -import Typography from '@material-ui/core/Typography'; +import { makeStyles } from '@material-ui/core/styles'; //import 'typeface-roboto'; import Board from "./Board.js"; -import './modest.css'; import "./App.css"; -function noChange() {}; - -class App extends React.Component { - constructor(props) { - super(props); - this.props.history.listen((location, action) => {}); - } - - componentDidMount() { - const location = this.props.history.location.pathname; - console.log(`App.mounted at ${location}`); - } - - hidePopup() { - this.setState({ - modalShown: false - }); - } - - render() { - - return ( -
(this.app = ref) }> - - - - Test - - - News - - - - -
- - -
-
- ); - } +function App() { + return ( + + + + + + + + + ); } -export default withRouter(App); +export default App; diff --git a/src/Board.css b/src/Board.css new file mode 100755 index 0000000..94178c2 --- /dev/null +++ b/src/Board.css @@ -0,0 +1,102 @@ +.Board { + display: inline-block; + position: absolute; + width: 100%; + overflow: hidden; + height: 100%; +} + +.Display { + display: inline-block; + position: absolute; +} + +.Cards { + display: inline-block; + position: absolute; + text-align: right; + vertical-align: bottom; + padding: 0.5em; + box-sizing: border-box; + max-height: 100%; + max-width: 100%; +} + +.Stack { + position: relative; + display: inline-block; +} + +.Stack:not(:first-child) { + margin-left: -3em; + transition: margin-left 1s ease-in-out 0.25s; +} + +.Stack > * { + transition: margin-left 1s ease-in-out 0.25s, margin-right 1s ease-in-out 0.25s; +} + +.Development:hover, +.Placard:hover, +.Resource:hover { + filter: brightness(150%); +} + +.Stack > *:not(:first-child) { + margin-left: -4.5em; +} + +.Hand { + min-height: calc(7.2em + 0.5em); +} + +.Hand:hover .Stack:hover > *:not(:first-child) { + margin-left: -2em; +} + +.Hand:hover .Stack:hover:not(:last-child) > *:last-child { + margin-right: 3em; +} + +.Placard { + position: relative; + width: 9.4em; + height: 11.44em; + background-position: center; + background-repeat: no-repeat; + background-size: cover; + margin: 0.25em; + display: inline-block; +} + +.Development { + position: relative; + display: inline-block; + width: 4.9em; + height: 7.2em; + background-position: center; + background-repeat: no-repeat; + background-size: cover; + margin: 0.25em; +} + +.Resource { + position: relative; + width: 4.9em; + height: 7.2em; + display: inline-block; + background-position: center; + background-repeat: no-repeat; + background-size: cover; + margin: 0.25em; +} + +.Statistics > div:nth-child(2) { + display: flex; + flex-direction: row; + border: 1px solid black; +} + +.Statistics div:nth-child(2) div { + padding: 0.25em 0.5em; +} diff --git a/src/Board.js b/src/Board.js index 10e5413..194ad3c 100755 --- a/src/Board.js +++ b/src/Board.js @@ -1,4 +1,5 @@ import React, { useState, useEffect } from "react"; +import "./Board.css"; const hexagonRatio = 1.1547005, tileHeight = 0.16, @@ -366,6 +367,10 @@ class Board extends React.Component { x = event.clientX; y = event.clientY; } + + if (this.offsetY) { + y -= this.offsetY; + } /* Scale mouse.x and mouse.y relative to board */ this.mouse.x = (x - rect.left) / @@ -425,10 +430,23 @@ class Board extends React.Component { } this.updateSizeTimer = setTimeout(() => { - this.canvas.width = this.canvas.offsetWidth; - this.canvas.height = this.canvas.offsetHeight; - this.width = this.canvas.parentElement.clientWidth; - this.height = this.canvas.parentElement.clientHeight; + const container = document.getElementById("root"), + offset = container.firstChild.offsetHeight, + height = window.innerHeight - offset; + + this.offsetY = offset; + this.width = window.innerWidth; + this.height = height; + + this.canvas.width = this.width; + this.canvas.height = this.height; + this.canvas.style.top = `${offset}px`; + this.canvas.style.width = `${this.width}px`; + this.canvas.style.height = `${this.height}px`; + this.cards.style.top = `${offset}px`; + this.cards.style.width = `${this.width}px`; + this.cards.style.height = `${this.heigh}tpx`; + this.updateSizeTimer = 0; this.drawFrame(); }, 250); @@ -814,9 +832,9 @@ class Board extends React.Component { render() { return ( - <> - this.canvas = el}> -
+
this.el = el}> + this.canvas = el}> +
this.cards = el}>
In hand
@@ -858,7 +876,7 @@ class Board extends React.Component {
- +
); } } diff --git a/src/CodeBlock.js b/src/CodeBlock.js deleted file mode 100644 index e6c7edf..0000000 --- a/src/CodeBlock.js +++ /dev/null @@ -1,31 +0,0 @@ -import React, { PureComponent } from "react"; -import PropTypes from "prop-types"; -import { Prism as SyntaxHighlighter } from "react-syntax-highlighter"; -import { okaidia } from "react-syntax-highlighter/dist/esm/styles/prism"; - -class CodeBlock extends PureComponent { - /* NOTE: the line-numbers plugin isn't working. - * See https://betterstack.dev/blog/code-highlighting-in-react-using-prismjs/ - * for some clues on how to fix it. */ - static propTypes = { - value: PropTypes.string.isRequired, - language: PropTypes.string, - plugins: PropTypes.arrayOf(PropTypes.string) - }; - - static defaultProps = { - language: null, - plugins: [ "line-numbers" ] - }; - - render() { - const { language, plugins, value } = this.props; - return ( - - {value} - - ); - } -} - -export default CodeBlock; \ No newline at end of file diff --git a/src/Contents.js b/src/Contents.js deleted file mode 100644 index bc9b1e4..0000000 --- a/src/Contents.js +++ /dev/null @@ -1,173 +0,0 @@ -import React, { useState, useEffect } from "react"; - -import WaveBalls from "./WaveBalls.js"; -import AnimakitExpander from "animakit-expander"; - -import "./App.css"; - -const sections = [ - "Platforms", - "Drivers", - "Compute", - "Media", - "3D", - "Solutions" -]; - -class Header extends React.Component { - render() { - return ( -
- -
- { - sections.map((section) => -
{ section }
- ) - } -
-
- ); - } -} - -class Logo extends React.Component { - render() { - return
- } -} - -class Footer extends React.Component { - render() { - return ( -
- Copyright 2019 Intel Corporation -
- ); - } -} - -class Body extends React.Component { - static defaultProps = { - topics: [ { - title: "Agama", - stories: [ { - title: "About Agama", - content: "Agama is the quarterly distribution of Intel graphics projects for Linux, packaged, validated, and made available from a single repository." - }] - }, { - title: "Media", - stories: [ { - title: "About Media", - content: "Media capabilities for Intel graphics cards on Linux are provided by Intel's Media packages." - } ] - }, { - title: "Compute", - stories: [ { - title: "About Compute", - content: "Compute capabilities for Intel graphics cards on Linux are provided by Intel's Open CL project: Neo." - } ] - }, { - title: "3D", - stories: [ { - title: "About 3D", - content: "3D capabilities for Intel graphics cards on Linux are provided by Mesa." - } ] - }, { - title: "Solutions", - stories: [ { - title: "About Solutions", - content: "Turn-key containers ready to rock." - } ] - } ] - }; - - constructor(props) { - super(props); - this.props.topics.forEach((topic) => { - for (var i = 0; i < 10; i++) { - topic.stories.push({ - title: "Title #" + (i + 1), - content: "Content for #" + (i + 1) - }); - } - }); - - this.topicClicked = this.topicClicked.bind(this); - this.state = { - topic: 0, - story: 0 - } - } - - topicClicked(index) { - this.setState({ - topic: index, - story: 0 - }); - } - - storyClicked(index) { - this.setState({ story: index }); - } - - componentDidMount() { - console.log("App.mounted"); - sections.forEach((section) => { - }); - } - - render() { - const topic = this.props.topics[this.state.topic], - story = topic.stories[this.state.story]; - - console.log(this.state.topic); - return ( -
-
-
- { - this.props.topics.map((topic, topicIndex) => -
-
this.topicClicked(topicIndex)}>{topic.title}
- - { - topic.stories.map((story, storyIndex) => -
this.storyClicked(storyIndex)} - key={ "story-" + topicIndex + "-" + storyIndex }>{story.title}
- ) - } -
- -
- ) - } -
-
- { story.title }

-
{story.content}
-
-
- -
- ); - } -} - -class App extends React.Component { - render() { - return ( -
-
- -
- ); - } -} - -export default App; diff --git a/src/WaveBalls.js b/src/WaveBalls.js old mode 100755 new mode 100644 diff --git a/src/drivers.css b/src/drivers.css deleted file mode 100755 index 49c0949..0000000 --- a/src/drivers.css +++ /dev/null @@ -1,42 +0,0 @@ -.tab-content { - border: 1px solid #d0d0d0; - border-top-color: transparent; - border-bottom-left-radius: 0.25em; - border-bottom-right-radius: 0.25em; - padding: 1em; - padding-bottom: 1.3em; -} - -.tab-content p { - margin: 1em 0; -} - -.tab-content p:last-child { - margin-bottom: 0em; -} - -.tab-content .Markdown table { - min-width: 75%; - margin: 1em 0 1em 0; -} - -.tab-content .Markdown table thead { - background-color: #555; - color: white; - vertical-align: middle; -} - -.tab-content .Markdown h1, -.tab-content .Markdown h2, -.tab-content .Markdown h3 { - margin-top: 1em; - font-size: 1.1em; -} - -.tab-content .Markdown h3 { - color: #333; -} - -.nav.nav-tabs { - margin-top: 1em; -} \ No newline at end of file diff --git a/src/drivers.js b/src/drivers.js deleted file mode 100755 index 50b418a..0000000 --- a/src/drivers.js +++ /dev/null @@ -1,186 +0,0 @@ -/* App starts here */ -import React, { useState, useEffect } from "react"; -import ReactMarkdown from "react-markdown/with-html"; -import CodeBlock from "./CodeBlock"; -import MarkdownLoader from "./markdown-loader"; -import Tabs from "react-bootstrap/Tabs"; -import Tab from "react-bootstrap/Tab"; -import Col from "react-bootstrap/Col"; -import Row from "react-bootstrap/Row"; -import { lookupIntelGPU } from "./intel-gpu-info"; - -import "./drivers.css"; - -import { intelGPUs } from './intel-gpu-info.js'; - - -class HardwareTable extends React.Component { - constructor(props) { - super(props); - - } - - render () { -/* const GPUs = intelGPUs.filter((item) => { - return item. - })*/ - return ( - <> - - - - { (this.props.device) &&
Filtering by { this.props.device }
} - - - Graphics - - - test two - - - - ) - } -} - -class OSPicker extends React.Component { - constructor(props) { - super(props); - console.log("OSPicker: " + props.device); - this.clearFilter = this.clearFilter.bind(this); - } - - clearFilter() { - if (window.clearFilter) { - window.clearFilter(); - } - } - - render() { - const id = parseInt("0x" + (this.props.device || "0")), - device = lookupIntelGPU(id); - let suffix; - if (device) { - switch (device.gen) { - case 1: - suffix = "st"; - break; - case 2: - suffix = "nd"; - break; - default: - suffix = "th"; - break; - } - } - - return ( - - - - - {/* - - - - - - { (device) && - <> -

Hardware selected: PCI device ID 8086:{ device.id.toString(16).replace(/0x/, "") } is - a { device.gen }{ suffix } generation { device.name }. -

- - } { - (device && device.gen > 8) && - - } { - (device && device.gen <= 8) && - - } { (!device) && } -
-
-
*/} - - {/* - - - - */} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - {/* - - */} -
- ) - } -} - -class Drivers extends React.Component { - constructor(props) { - super(props); - console.log("Drivers: " + props.device); - } - - render () { - return ( -
- -{/*Select either the operating system you are looking for, or select Hardware to see a table of OS support.*/} -
- -
-
- ); - } -} - -export default Drivers; diff --git a/src/intel-gpu-info.js b/src/intel-gpu-info.js deleted file mode 100644 index be1db77..0000000 --- a/src/intel-gpu-info.js +++ /dev/null @@ -1,296 +0,0 @@ -"use strict"; - -/* - * Device ID names derived from Mesa, which are licensed - * under the terms of MIT license: - * - * https://gitlab.freedesktop.org/mesa/mesa/blob/master/docs/license.html - * - */ -var intelGPUs=[]; -intelGPUs.push({id: 0x7121, family: "I810", name: "i8xx", gen: 0, gt: 0}); -intelGPUs.push({id: 0x7123, family: "I810_DC100", name: "i8xx", gen: 0, gt: 0}); -intelGPUs.push({id: 0x7125, family: "I810_E", name: "i8xx", gen: 0, gt: 0}); -intelGPUs.push({id: 0x1132, family: "I815", name: "i8xx", gen: 0, gt: 0}); -intelGPUs.push({id: 0x3577, family: "I830_M", name: "Intel(R) 830M", gen: 0, gt: 0}); -intelGPUs.push({id: 0x2562, family: "845_G", name: "Intel(R) 845G", gen: 0, gt: 0}); -intelGPUs.push({id: 0x3582, family: "I855_GM", name: "Intel(R) 852GM/855GM", gen: 0, gt: 0}); -intelGPUs.push({id: 0x2572, family: "I865_G", name: "Intel(R) 865G", gen: 0, gt: 0}); -intelGPUs.push({id: 0x2582, family: "I915_G", name: "Intel(R) 915G", gen: 0, gt: 0}); -intelGPUs.push({id: 0x258A, family: "E7221_G", name: "Intel(R) E7221G (i915)", gen: 0, gt: 0}); -intelGPUs.push({id: 0x2592, family: "I915_GM", name: "Intel(R) 915GM", gen: 0, gt: 0}); -intelGPUs.push({id: 0x2772, family: "I945_G", name: "Intel(R) 945G", gen: 0, gt: 0}); -intelGPUs.push({id: 0x27A2, family: "I945_GM", name: "Intel(R) 945GM", gen: 0, gt: 0}); -intelGPUs.push({id: 0x27AE, family: "I945_GME", name: "Intel(R) 945GME", gen: 0, gt: 0}); -intelGPUs.push({id: 0x29B2, family: "Q35_G", name: "Intel(R) Q35", gen: 0, gt: 0}); -intelGPUs.push({id: 0x29C2, family: "G33_G", name: "Intel(R) G33", gen: 0, gt: 0}); -intelGPUs.push({id: 0x29D2, family: "Q33_G", name: "Intel(R) Q33", gen: 0, gt: 0}); -intelGPUs.push({id: 0xA011, family: "PNV_GM", name: "Intel(R) Pineview M", gen: 0, gt: 0}); -intelGPUs.push({id: 0xA001, family: "PNV_G", name: "Intel(R) Pineview", gen: 0, gt: 0}); -intelGPUs.push({id: 0x29A2, family: "i965", name: "Intel(R) 965G", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2992, family: "i965", name: "Intel(R) 965Q", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2982, family: "i965", name: "Intel(R) 965G", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2972, family: "i965", name: "Intel(R) 946GZ", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2A02, family: "i965", name: "Intel(R) 965GM", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2A12, family: "i965", name: "Intel(R) 965GME/GLE", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2A42, family: "g4x", name: "Mobile IntelĀ® GM45 Express Chipset", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2E02, family: "g4x", name: "Intel(R) Integrated Graphics Device", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2E12, family: "g4x", name: "Intel(R) Q45/Q43", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2E22, family: "g4x", name: "Intel(R) G45/G43", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2E32, family: "g4x", name: "Intel(R) G41", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2E42, family: "g4x", name: "Intel(R) B43", gen: 4, gt: 0}); -intelGPUs.push({id: 0x2E92, family: "g4x", name: "Intel(R) B43", gen: 4, gt: 0}); -intelGPUs.push({id: 0x0042, family: "ilk", name: "Intel(R) Ironlake Desktop", gen: 5, gt: 0}); -intelGPUs.push({id: 0x0046, family: "ilk", name: "Intel(R) Ironlake Mobile", gen: 5, gt: 0}); -intelGPUs.push({id: 0x0102, family: "snb_gt1", name: "Intel(R) Sandybridge Desktop", gen: 6, gt: 1}); -intelGPUs.push({id: 0x0112, family: "snb_gt2", name: "Intel(R) Sandybridge Desktop", gen: 6, gt: 2}); -intelGPUs.push({id: 0x0122, family: "snb_gt2", name: "Intel(R) Sandybridge Desktop", gen: 6, gt: 2}); -intelGPUs.push({id: 0x0106, family: "snb_gt1", name: "Intel(R) Sandybridge Mobile", gen: 6, gt: 1}); -intelGPUs.push({id: 0x0116, family: "snb_gt2", name: "Intel(R) Sandybridge Mobile", gen: 6, gt: 2}); -intelGPUs.push({id: 0x0126, family: "snb_gt2", name: "Intel(R) Sandybridge Mobile", gen: 6, gt: 2}); -intelGPUs.push({id: 0x010A, family: "snb_gt1", name: "Intel(R) Sandybridge Server", gen: 6, gt: 1}); -intelGPUs.push({id: 0x0152, family: "ivb_gt1", name: "Intel(R) Ivybridge Desktop", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0162, family: "ivb_gt2", name: "Intel(R) Ivybridge Desktop", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0156, family: "ivb_gt1", name: "Intel(R) Ivybridge Mobile", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0166, family: "ivb_gt2", name: "Intel(R) Ivybridge Mobile", gen: 7, gt: 2}); -intelGPUs.push({id: 0x015A, family: "ivb_gt1", name: "Intel(R) Ivybridge Server", gen: 7, gt: 1}); -intelGPUs.push({id: 0x016A, family: "ivb_gt2", name: "Intel(R) Ivybridge Server", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0402, family: "hsw_gt1", name: "Intel(R) Haswell Desktop", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0412, family: "hsw_gt2", name: "Intel(R) Haswell Desktop", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0422, family: "hsw_gt3", name: "Intel(R) Haswell Desktop", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0406, family: "hsw_gt1", name: "Intel(R) Haswell Mobile", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0416, family: "hsw_gt2", name: "Intel(R) Haswell Mobile", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0426, family: "hsw_gt3", name: "Intel(R) Haswell Mobile", gen: 7, gt: 3}); -intelGPUs.push({id: 0x040A, family: "hsw_gt1", name: "Intel(R) Haswell Server", gen: 7, gt: 1}); -intelGPUs.push({id: 0x041A, family: "hsw_gt2", name: "Intel(R) Haswell Server", gen: 7, gt: 2}); -intelGPUs.push({id: 0x042A, family: "hsw_gt3", name: "Intel(R) Haswell Server", gen: 7, gt: 3}); -intelGPUs.push({id: 0x040B, family: "hsw_gt1", name: "Intel(R) Haswell", gen: 7, gt: 1}); -intelGPUs.push({id: 0x041B, family: "hsw_gt2", name: "Intel(R) Haswell", gen: 7, gt: 2}); -intelGPUs.push({id: 0x042B, family: "hsw_gt3", name: "Intel(R) Haswell", gen: 7, gt: 3}); -intelGPUs.push({id: 0x040E, family: "hsw_gt1", name: "Intel(R) Haswell", gen: 7, gt: 1}); -intelGPUs.push({id: 0x041E, family: "hsw_gt2", name: "Intel(R) Haswell", gen: 7, gt: 2}); -intelGPUs.push({id: 0x042E, family: "hsw_gt3", name: "Intel(R) Haswell", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0C02, family: "hsw_gt1", name: "Intel(R) Haswell Desktop", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0C12, family: "hsw_gt2", name: "Intel(R) Haswell Desktop", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0C22, family: "hsw_gt3", name: "Intel(R) Haswell Desktop", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0C06, family: "hsw_gt1", name: "Intel(R) Haswell Mobile", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0C16, family: "hsw_gt2", name: "Intel(R) Haswell Mobile", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0C26, family: "hsw_gt3", name: "Intel(R) Haswell Mobile", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0C0A, family: "hsw_gt1", name: "Intel(R) Haswell Server", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0C1A, family: "hsw_gt2", name: "Intel(R) Haswell Server", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0C2A, family: "hsw_gt3", name: "Intel(R) Haswell Server", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0C0B, family: "hsw_gt1", name: "Intel(R) Haswell", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0C1B, family: "hsw_gt2", name: "Intel(R) Haswell", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0C2B, family: "hsw_gt3", name: "Intel(R) Haswell", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0C0E, family: "hsw_gt1", name: "Intel(R) Haswell", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0C1E, family: "hsw_gt2", name: "Intel(R) Haswell", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0C2E, family: "hsw_gt3", name: "Intel(R) Haswell", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0A02, family: "hsw_gt1", name: "Intel(R) Haswell Desktop", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0A12, family: "hsw_gt2", name: "Intel(R) Haswell Desktop", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0A22, family: "hsw_gt3", name: "Intel(R) Haswell Desktop", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0A06, family: "hsw_gt1", name: "Intel(R) Haswell Mobile", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0A16, family: "hsw_gt2", name: "Intel(R) Haswell Mobile", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0A26, family: "hsw_gt3", name: "Intel(R) Haswell Mobile", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0A0A, family: "hsw_gt1", name: "Intel(R) Haswell Server", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0A1A, family: "hsw_gt2", name: "Intel(R) Haswell Server", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0A2A, family: "hsw_gt3", name: "Intel(R) Haswell Server", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0A0B, family: "hsw_gt1", name: "Intel(R) Haswell", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0A1B, family: "hsw_gt2", name: "Intel(R) Haswell", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0A2B, family: "hsw_gt3", name: "Intel(R) Haswell", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0A0E, family: "hsw_gt1", name: "Intel(R) Haswell", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0A1E, family: "hsw_gt2", name: "Intel(R) Haswell", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0A2E, family: "hsw_gt3", name: "Intel(R) Haswell", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0D02, family: "hsw_gt1", name: "Intel(R) Haswell Desktop", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0D12, family: "hsw_gt2", name: "Intel(R) Haswell Desktop", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0D22, family: "hsw_gt3", name: "Intel(R) Haswell Desktop", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0D06, family: "hsw_gt1", name: "Intel(R) Haswell Mobile", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0D16, family: "hsw_gt2", name: "Intel(R) Haswell Mobile", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0D26, family: "hsw_gt3", name: "Intel(R) Haswell Mobile", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0D0A, family: "hsw_gt1", name: "Intel(R) Haswell Server", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0D1A, family: "hsw_gt2", name: "Intel(R) Haswell Server", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0D2A, family: "hsw_gt3", name: "Intel(R) Haswell", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0D0B, family: "hsw_gt1", name: "Intel(R) Haswell", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0D1B, family: "hsw_gt2", name: "Intel(R) Haswell", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0D2B, family: "hsw_gt3", name: "Intel(R) Haswell", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0D0E, family: "hsw_gt1", name: "Intel(R) Haswell", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0D1E, family: "hsw_gt2", name: "Intel(R) Haswell", gen: 7, gt: 2}); -intelGPUs.push({id: 0x0D2E, family: "hsw_gt3", name: "Intel(R) Haswell", gen: 7, gt: 3}); -intelGPUs.push({id: 0x0F31, family: "byt", name: "Intel(R) Bay Trail", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0F32, family: "byt", name: "Intel(R) Bay Trail", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0F33, family: "byt", name: "Intel(R) Bay Trail", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0157, family: "byt", name: "Intel(R) Bay Trail", gen: 7, gt: 1}); -intelGPUs.push({id: 0x0155, family: "byt", name: "Intel(R) Bay Trail", gen: 7, gt: 1}); -intelGPUs.push({id: 0x22B0, family: "chv", name: "Intel(R) HD Graphics (Cherrytrail)", gen: 8, gt: 1}); -intelGPUs.push({id: 0x22B1, family: "chv", name: "Intel(R) HD Graphics XXX (Braswell)", gen: 8, gt: 1}); -intelGPUs.push({id: 0x22B2, family: "chv", name: "Intel(R) HD Graphics (Cherryview)", gen: 8, gt: 1}); -intelGPUs.push({id: 0x22B3, family: "chv", name: "Intel(R) HD Graphics (Cherryview)", gen: 8, gt: 1}); -intelGPUs.push({id: 0x1602, family: "bdw_gt1", name: "Intel(R) Broadwell GT1", gen: 8, gt: 1}); -intelGPUs.push({id: 0x1606, family: "bdw_gt1", name: "Intel(R) Broadwell GT1", gen: 8, gt: 1}); -intelGPUs.push({id: 0x160A, family: "bdw_gt1", name: "Intel(R) Broadwell GT1", gen: 8, gt: 1}); -intelGPUs.push({id: 0x160B, family: "bdw_gt1", name: "Intel(R) Broadwell GT1", gen: 8, gt: 1}); -intelGPUs.push({id: 0x160D, family: "bdw_gt1", name: "Intel(R) Broadwell GT1", gen: 8, gt: 1}); -intelGPUs.push({id: 0x160E, family: "bdw_gt1", name: "Intel(R) Broadwell GT1", gen: 8, gt: 1}); -intelGPUs.push({id: 0x1612, family: "bdw_gt2", name: "Intel(R) HD Graphics 5600 (Broadwell GT2)", gen: 8, gt: 2}); -intelGPUs.push({id: 0x1616, family: "bdw_gt2", name: "Intel(R) HD Graphics 5500 (Broadwell GT2)", gen: 8, gt: 2}); -intelGPUs.push({id: 0x161A, family: "bdw_gt2", name: "Intel(R) Broadwell GT2", gen: 8, gt: 2}); -intelGPUs.push({id: 0x161B, family: "bdw_gt2", name: "Intel(R) Broadwell GT2", gen: 8, gt: 2}); -intelGPUs.push({id: 0x161D, family: "bdw_gt2", name: "Intel(R) Broadwell GT2", gen: 8, gt: 2}); -intelGPUs.push({id: 0x161E, family: "bdw_gt2", name: "Intel(R) HD Graphics 5300 (Broadwell GT2)", gen: 8, gt: 2}); -intelGPUs.push({id: 0x1622, family: "bdw_gt3", name: "Intel(R) Iris Pro 6200 (Broadwell GT3e)", gen: 8, gt: 3}); -intelGPUs.push({id: 0x1626, family: "bdw_gt3", name: "Intel(R) HD Graphics 6000 (Broadwell GT3)", gen: 8, gt: 3}); -intelGPUs.push({id: 0x162A, family: "bdw_gt3", name: "Intel(R) Iris Pro P6300 (Broadwell GT3e)", gen: 8, gt: 3}); -intelGPUs.push({id: 0x162B, family: "bdw_gt3", name: "Intel(R) Iris 6100 (Broadwell GT3)", gen: 8, gt: 3}); -intelGPUs.push({id: 0x162D, family: "bdw_gt3", name: "Intel(R) Broadwell GT3", gen: 8, gt: 3}); -intelGPUs.push({id: 0x162E, family: "bdw_gt3", name: "Intel(R) Broadwell GT3", gen: 8, gt: 3}); -intelGPUs.push({id: 0x1902, family: "skl_gt1", name: "Intel(R) HD Graphics 510 (Skylake GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x1906, family: "skl_gt1", name: "Intel(R) HD Graphics 510 (Skylake GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x190A, family: "skl_gt1", name: "Intel(R) Skylake GT1", gen: 9, gt: 1}); -intelGPUs.push({id: 0x190B, family: "skl_gt1", name: "Intel(R) HD Graphics 510 (Skylake GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x190E, family: "skl_gt1", name: "Intel(R) Skylake GT1", gen: 9, gt: 1}); -intelGPUs.push({id: 0x1912, family: "skl_gt2", name: "Intel(R) HD Graphics 530 (Skylake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x1913, family: "skl_gt2", name: "Intel(R) Skylake GT2f", gen: 9, gt: 2}); -intelGPUs.push({id: 0x1915, family: "skl_gt2", name: "Intel(R) Skylake GT2f", gen: 9, gt: 2}); -intelGPUs.push({id: 0x1916, family: "skl_gt2", name: "Intel(R) HD Graphics 520 (Skylake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x1917, family: "skl_gt2", name: "Intel(R) Skylake GT2f", gen: 9, gt: 2}); -intelGPUs.push({id: 0x191A, family: "skl_gt2", name: "Intel(R) Skylake GT2", gen: 9, gt: 2}); -intelGPUs.push({id: 0x191B, family: "skl_gt2", name: "Intel(R) HD Graphics 530 (Skylake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x191D, family: "skl_gt2", name: "Intel(R) HD Graphics P530 (Skylake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x191E, family: "skl_gt2", name: "Intel(R) HD Graphics 515 (Skylake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x1921, family: "skl_gt2", name: "Intel(R) HD Graphics 520 (Skylake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x1923, family: "skl_gt3", name: "Intel(R) Skylake GT3e", gen: 9, gt: 3}); -intelGPUs.push({id: 0x1926, family: "skl_gt3", name: "Intel(R) Iris Graphics 540 (Skylake GT3e)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x1927, family: "skl_gt3", name: "Intel(R) Iris Graphics 550 (Skylake GT3e)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x192A, family: "skl_gt4", name: "Intel(R) Skylake GT4", gen: 9, gt: 4}); -intelGPUs.push({id: 0x192B, family: "skl_gt3", name: "Intel(R) Iris Graphics 555 (Skylake GT3e)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x192D, family: "skl_gt3", name: "Intel(R) Iris Graphics P555 (Skylake GT3e)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x1932, family: "skl_gt4", name: "Intel(R) Iris Pro Graphics 580 (Skylake GT4e)", gen: 9, gt: 4}); -intelGPUs.push({id: 0x193A, family: "skl_gt4", name: "Intel(R) Iris Pro Graphics P580 (Skylake GT4e)", gen: 9, gt: 4}); -intelGPUs.push({id: 0x193B, family: "skl_gt4", name: "Intel(R) Iris Pro Graphics 580 (Skylake GT4e)", gen: 9, gt: 4}); -intelGPUs.push({id: 0x193D, family: "skl_gt4", name: "Intel(R) Iris Pro Graphics P580 (Skylake GT4e)", gen: 9, gt: 4}); -intelGPUs.push({id: 0x0A84, family: "bxt", name: "Intel(R) HD Graphics (Broxton)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x1A84, family: "bxt", name: "Intel(R) HD Graphics (Broxton)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x1A85, family: "bxt_2x6", name: "Intel(R) HD Graphics (Broxton 2x6)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x5A84, family: "bxt", name: "Intel(R) HD Graphics 505 (Broxton)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x5A85, family: "bxt_2x6", name: "Intel(R) HD Graphics 500 (Broxton 2x6)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x5902, family: "kbl_gt1", name: "Intel(R) HD Graphics 610 (Kaby Lake GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x5906, family: "kbl_gt1", name: "Intel(R) HD Graphics 610 (Kaby Lake GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x590A, family: "kbl_gt1", name: "Intel(R) Kabylake GT1", gen: 9, gt: 1}); -intelGPUs.push({id: 0x5908, family: "kbl_gt1", name: "Intel(R) Kabylake GT1", gen: 9, gt: 1}); -intelGPUs.push({id: 0x590B, family: "kbl_gt1", name: "Intel(R) Kabylake GT1", gen: 9, gt: 1}); -intelGPUs.push({id: 0x590E, family: "kbl_gt1", name: "Intel(R) Kabylake GT1", gen: 9, gt: 1}); -intelGPUs.push({id: 0x5913, family: "kbl_gt1_5", name: "Intel(R) Kabylake GT1.5", gen: 9, gt: 1}); -intelGPUs.push({id: 0x5915, family: "kbl_gt1_5", name: "Intel(R) Kabylake GT1.5", gen: 9, gt: 1}); -intelGPUs.push({id: 0x5917, family: "kbl_gt2", name: "Intel(R) UHD Graphics 620 (Kabylake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x5912, family: "kbl_gt2", name: "Intel(R) HD Graphics 630 (Kaby Lake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x5916, family: "kbl_gt2", name: "Intel(R) HD Graphics 620 (Kaby Lake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x591A, family: "kbl_gt2", name: "Intel(R) HD Graphics P630 (Kaby Lake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x591B, family: "kbl_gt2", name: "Intel(R) HD Graphics 630 (Kaby Lake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x591D, family: "kbl_gt2", name: "Intel(R) HD Graphics P630 (Kaby Lake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x591E, family: "kbl_gt2", name: "Intel(R) HD Graphics 615 (Kaby Lake GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x5921, family: "kbl_gt2", name: "Intel(R) Kabylake GT2F", gen: 9, gt: 2}); -intelGPUs.push({id: 0x5923, family: "kbl_gt3", name: "Intel(R) Kabylake GT3", gen: 9, gt: 3}); -intelGPUs.push({id: 0x5926, family: "kbl_gt3", name: "Intel(R) Iris Plus Graphics 640 (Kaby Lake GT3e)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x5927, family: "kbl_gt3", name: "Intel(R) Iris Plus Graphics 650 (Kaby Lake GT3e)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x593B, family: "kbl_gt4", name: "Intel(R) Kabylake GT4", gen: 9, gt: 4}); -intelGPUs.push({id: 0x591C, family: "kbl_gt2", name: "Intel(R) Amber Lake (Kabylake) GT2", gen: 9, gt: 2}); -intelGPUs.push({id: 0x87C0, family: "kbl_gt2", name: "Intel(R) Amber Lake (Kabylake) GT2", gen: 9, gt: 2}); -intelGPUs.push({id: 0x87CA, family: "cfl_gt2", name: "Intel(R) Amber Lake (Coffeelake) GT2", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3184, family: "glk", name: "Intel(R) UHD Graphics 605 (Geminilake)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x3185, family: "glk_2x6", name: "Intel(R) UHD Graphics 600 (Geminilake 2x6)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x3E90, family: "cfl_gt1", name: "Intel(R) UHD Graphics 610 (Coffeelake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x3E93, family: "cfl_gt1", name: "Intel(R) UHD Graphics 610 (Coffeelake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x3E99, family: "cfl_gt1", name: "Intel(R) HD Graphics (Coffeelake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x3E9C, family: "cfl_gt1", name: "Intel(R) HD Graphics (Coffeelake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x3E91, family: "cfl_gt2", name: "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3E92, family: "cfl_gt2", name: "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3E96, family: "cfl_gt2", name: "Intel(R) HD Graphics (Coffeelake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3E98, family: "cfl_gt2", name: "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3E9A, family: "cfl_gt2", name: "Intel(R) HD Graphics (Coffeelake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3E9B, family: "cfl_gt2", name: "Intel(R) UHD Graphics 630 (Coffeelake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3E94, family: "cfl_gt2", name: "Intel(R) HD Graphics (Coffeelake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3EA9, family: "cfl_gt2", name: "Intel(R) HD Graphics (Coffeelake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3EA5, family: "cfl_gt3", name: "Intel(R) HD Graphics (Coffeelake 3x8 GT3)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x3EA6, family: "cfl_gt3", name: "Intel(R) HD Graphics (Coffeelake 3x8 GT3)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x3EA7, family: "cfl_gt3", name: "Intel(R) HD Graphics (Coffeelake 3x8 GT3)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x3EA8, family: "cfl_gt3", name: "Intel(R) HD Graphics (Coffeelake 3x8 GT3)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x3EA1, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Whiskey Lake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x3EA4, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x3EA0, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3EA3, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x3EA2, family: "cfl_gt3", name: "Intel(R) UHD Graphics (Whiskey Lake 3x8 GT3)", gen: 9, gt: 3}); -intelGPUs.push({id: 0x9B21, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x9BA0, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x9BA2, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x9BA4, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x9BA5, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x9BA8, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x9BAA, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x9BAB, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x9BAC, family: "cfl_gt1", name: "Intel(R) UHD Graphics (Comet Lake 2x6 GT1)", gen: 9, gt: 1}); -intelGPUs.push({id: 0x9B41, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BC0, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BC2, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BC4, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BC5, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BC6, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BC8, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BCA, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BCB, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BCC, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BE6, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x9BF6, family: "cfl_gt2", name: "Intel(R) UHD Graphics (Comet Lake 3x8 GT2)", gen: 9, gt: 2}); -intelGPUs.push({id: 0x5A49, family: "cnl_2x8", name: "Intel(R) HD Graphics (Cannonlake 2x8 GT0.5)", gen: 10, gt: 1}); -intelGPUs.push({id: 0x5A4A, family: "cnl_2x8", name: "Intel(R) HD Graphics (Cannonlake 2x8 GT0.5)", gen: 10, gt: 1}); -intelGPUs.push({id: 0x5A41, family: "cnl_3x8", name: "Intel(R) HD Graphics (Cannonlake 3x8 GT1)", gen: 10, gt: 1}); -intelGPUs.push({id: 0x5A42, family: "cnl_3x8", name: "Intel(R) HD Graphics (Cannonlake 3x8 GT1)", gen: 10, gt: 1}); -intelGPUs.push({id: 0x5A44, family: "cnl_3x8", name: "Intel(R) HD Graphics (Cannonlake 3x8 GT1)", gen: 10, gt: 1}); -intelGPUs.push({id: 0x5A59, family: "cnl_4x8", name: "Intel(R) HD Graphics (Cannonlake 4x8 GT1.5)", gen: 10, gt: 1}); -intelGPUs.push({id: 0x5A5A, family: "cnl_4x8", name: "Intel(R) HD Graphics (Cannonlake 4x8 GT1.5)", gen: 10, gt: 1}); -intelGPUs.push({id: 0x5A5C, family: "cnl_4x8", name: "Intel(R) HD Graphics (Cannonlake 4x8 GT1.5)", gen: 10, gt: 1}); -intelGPUs.push({id: 0x5A50, family: "cnl_5x8", name: "Intel(R) HD Graphics (Cannonlake 5x8 GT2)", gen: 10, gt: 2}); -intelGPUs.push({id: 0x5A51, family: "cnl_5x8", name: "Intel(R) HD Graphics (Cannonlake 5x8 GT2)", gen: 10, gt: 2}); -intelGPUs.push({id: 0x5A52, family: "cnl_5x8", name: "Intel(R) HD Graphics (Cannonlake 5x8 GT2)", gen: 10, gt: 2}); -intelGPUs.push({id: 0x5A54, family: "cnl_5x8", name: "Intel(R) HD Graphics (Cannonlake 5x8 GT2)", gen: 10, gt: 2}); -intelGPUs.push({id: 0x8A50, family: "icl_8x8", name: "Intel(R) HD Graphics (Ice Lake 8x8 GT2)", gen: 11, gt: 2}); -intelGPUs.push({id: 0x8A51, family: "icl_8x8", name: "Intel(R) Iris(R) Plus Graphics (Ice Lake 8x8 GT2)", gen: 11, gt: 2}); -intelGPUs.push({id: 0x8A52, family: "icl_8x8", name: "Intel(R) Iris(R) Plus Graphics (Ice Lake 8x8 GT2)", gen: 11, gt: 2}); -intelGPUs.push({id: 0x8A53, family: "icl_8x8", name: "Intel(R) Iris(R) Plus Graphics (Ice Lake 8x8 GT2)", gen: 11, gt: 2}); -intelGPUs.push({id: 0x8A54, family: "icl_6x8", name: "Intel(R) Iris(R) Plus Graphics (Ice Lake 6x8 GT1.5)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x8A56, family: "icl_4x8", name: "Intel(R) UHD Graphics (Ice Lake 4x8 GT1)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x8A57, family: "icl_6x8", name: "Intel(R) HD Graphics (Ice Lake 6x8 GT1.5)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x8A58, family: "icl_4x8", name: "Intel(R) UHD Graphics (Ice Lake 4x8 GT1)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x8A59, family: "icl_6x8", name: "Intel(R) HD Graphics (Ice Lake 6x8 GT1.5)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x8A5A, family: "icl_6x8", name: "Intel(R) Iris(R) Plus Graphics (Ice Lake 6x8 GT1.5)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x8A5B, family: "icl_4x8", name: "Intel(R) HD Graphics (Ice Lake 4x8 GT1)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x8A5C, family: "icl_6x8", name: "Intel(R) Iris(R) Plus Graphics (Ice Lake 6x8 GT1.5)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x8A5D, family: "icl_4x8", name: "Intel(R) HD Graphics (Ice Lake 4x8 GT1)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x8A71, family: "icl_1x8", name: "Intel(R) HD Graphics (Ice Lake 1x8 GT0.5)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x4500, family: "ehl_4x8", name: "Intel(R) HD Graphics (Elkhart Lake 4x8)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x4571, family: "ehl_4x8", name: "Intel(R) HD Graphics (Elkhart Lake 4x8)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x4551, family: "ehl_4x4", name: "Intel(R) HD Graphics (Elkhart Lake 4x4)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x4541, family: "ehl_2x4", name: "Intel(R) HD Graphics (Elkhart Lake 2x4)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x4E51, family: "ehl_4x4", name: "Intel(R) HD Graphics (Jasper Lake 4x4)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x4E61, family: "ehl_4x6", name: "Intel(R) HD Graphics (Jasper Lake 4x6)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x4E71, family: "ehl_4x8", name: "Intel(R) HD Graphics (Jasper Lake 4x8)", gen: 11, gt: 1}); -intelGPUs.push({id: 0x9A40, family: "tgl_1x6x16", name: "Intel(R) Graphics (TGL GT2)", gen: 12, gt: 2}); -intelGPUs.push({id: 0x9A49, family: "tgl_1x6x16", name: "Intel(R) Graphics (TGL GT2)", gen: 12, gt: 2}); -intelGPUs.push({id: 0x9A59, family: "tgl_1x6x16", name: "Intel(R) Graphics (TGL GT2)", gen: 12, gt: 2}); -intelGPUs.push({id: 0x9A60, family: "tgl_1x2x16", name: "Intel(R) Graphics (TGL GT1)", gen: 12, gt: 1}); -intelGPUs.push({id: 0x9A68, family: "tgl_1x2x16", name: "Intel(R) Graphics (TGL GT1)", gen: 12, gt: 1}); -intelGPUs.push({id: 0x9A70, family: "tgl_1x2x16", name: "Intel(R) Graphics (TGL GT1)", gen: 12, gt: 1}); -intelGPUs.push({id: 0x9A78, family: "tgl_1x2x16", name: "Intel(R) Graphics (TGL GT1)", gen: 12, gt: 1}); - -function lookupIntelGPU(id) { - var index = intelGPUs.findIndex(function(device) { - return (id == device.id); - }); - if (index) { - return intelGPUs[index]; - } - return null; -} - -export { - lookupIntelGPU, - intelGPUs -}; \ No newline at end of file diff --git a/src/intel.js b/src/intel.js deleted file mode 100644 index 998f132..0000000 --- a/src/intel.js +++ /dev/null @@ -1,61 +0,0 @@ -"use strict"; - -/* Convert a Date object to a work-week #, following Intel's - * methodology with the exception that we list WW53'(xx) for - * December dates that would be in WW01'(xx+1) */ -function intelDateToWW(date) { - if (!(date instanceof Date)) { - return "N/A: " + date; - } - var jan1 = new Date(date); - jan1.setMonth(0, 1); - var day = jan1.getDay(); - /* 0 = Sunday */ - - /* Determine the start of WW01 in # of seconds since - * Jan 1, 1970 00:00 GMT */ - var time = (jan1.getTime() / 1000) - (24 * 60 * 60) * (day + 1); - - /* Determine how far into the year the requested time - * is with WW01 00:00 as the base. */ - var delta = (date.getTime() / 1000) - time; - - var weeks = Math.ceil(delta / (24 * 60 * 60 * 7)), - year = date.getFullYear(); - - if (weeks > 52) { - weeks -= 52; - year++; - } - - return "WW" + (weeks < 10 ? "0" : "") + weeks + "'" + (year % 100); -} - -/* Convert an Intel WW to the date of Friday of that work week */ -function intelWWToDate(workweek, startOfWeek) { - if (!/^ww/i.exec(workweek)) { - workweek = "ww" + workweek; - } - /* 1 2 3 */ - var parts = ("" + workweek).match(/^ww([0-9]+)\s*('([0-9]+))?$/i); - if (!parts) { - return "N/A: " + workweek; - } - var year = parseInt(parts[3] || new Date().getFullYear()), - week = parseInt(parts[1].replace(/^0/, "")); - if (year < 1000) { - year += 2000; - } - - var jan1 = new Date(year, 0, 1, 0, 0, 0, 0); - - /* Rebase the returned date to Friday in the target WW */ - jan1.setDate((week * 7) - (jan1.getDay() + (startOfWeek ? 5 : 1))); - - return jan1; -} - -export default { - intelDateToWW, - intelWWToDate -}; \ No newline at end of file diff --git a/src/internal.css b/src/internal.css deleted file mode 100644 index 8ead195..0000000 --- a/src/internal.css +++ /dev/null @@ -1,49 +0,0 @@ -#technologies-content .tab-content { - border: 1px solid #d0d0d0; - border-radius: 0.25em; - padding: 1em; - padding-bottom: 1.3em; -} - -.tab-content { - border: 1px solid #d0d0d0; - border-top-color: transparent; - border-bottom-left-radius: 0.25em; - border-bottom-right-radius: 0.25em; - padding: 1em; - padding-bottom: 1.3em; -} - -.tab-content p { - margin: 1em 0; -} - -.tab-content p:last-child { - margin-bottom: 0em; -} - -.tab-content .Markdown table { - min-width: 75%; - margin: 1em 0 1em 0; -} - -.tab-content .Markdown table thead { - background-color: #555; - color: white; - vertical-align: middle; -} - -.tab-content .Markdown h1, -.tab-content .Markdown h2, -.tab-content .Markdown h3 { - margin-top: 1em; - font-size: 1.1em; -} - -.tab-content .Markdown h3 { - color: #333; -} - -.nav.nav-tabs { - margin-top: 1em; -} \ No newline at end of file diff --git a/src/internal.js b/src/internal.js deleted file mode 100644 index 64d6ac7..0000000 --- a/src/internal.js +++ /dev/null @@ -1,82 +0,0 @@ -/* App starts here */ -import React, { useState, useEffect } from "react"; -import Markdown from "react-markdown/with-html"; -import Nav from "react-bootstrap/Nav"; -import Col from "react-bootstrap/Col"; -import Row from "react-bootstrap/Row"; -import Tab from "react-bootstrap/Tab"; -import MarkdownLoader from "./markdown-loader.js"; - -import "./internal.css"; - -class TopicsPicker extends React.Component { - constructor(props) { - super(props); - } - - render () { - return ( - - - - - - - - - - - - - - - - - - - - - - - - - - - - ) - } -} - -class Internal extends React.Component { - constructor(props) { - super(props); - } - - render () { - return ( -
-
- -
-
- ); - } -} - -export default Internal; diff --git a/src/markdown-loader.js b/src/markdown-loader.js deleted file mode 100755 index 62da9e6..0000000 --- a/src/markdown-loader.js +++ /dev/null @@ -1,83 +0,0 @@ -/* App starts here */ -import React from "react"; -import ReactMarkdown from "react-markdown/with-html"; -import CodeBlock from "./CodeBlock"; - -class MarkdownLoader extends React.Component { - constructor(props) { - super(props); - this.state= { - src: props.src, - loaded: "", - loading: "", - markdown: props.markdown ? props.markdown : "Loading..." - }; - this.loadContent = this.loadContent.bind(this); - } - - componentDidMount() { - this.loadContent(); - } - - componentDidUpdate(previous) { - if (this.props.src != previous.src) { - this.state.src = this.props.src; - this.loadContent(); - } - } - - loadContent() { - if (!this.state.src) { - return; - } - - console.log("Loading " + this.state.src, this.props.src); - - this.state.loading = this.state.src; - fetch(this.state.src.match(/^https?:\/\//) ? this.state.src : "./docs/" + this.state.src) - .then((response) => { - if (response.ok) { - return response.text(); - } else { - throw Error(response.statusText) - } - }).then((result) => { - /* If 'result' doesn't already contain a link to the GitLab page, add it - * to the end of the content. */ - this.setState({ - loading: null, - loaded: this.state.loading, - markdown: result - }); - }, (error) => { - this.setState({ - markdown: this.props.fallback ? this.props.fallback : [ - "# Error loading " + this.state.src, - "", - error.message - ].join("\n") - }); - }); - } - - render() { - const isDebug = window.location.search.match(/debug(=(y|t|1).*)?/); - return ( -
- - { (isDebug) && -
- edit on gitlab -
- } -
- ) - } -} - -export default MarkdownLoader; \ No newline at end of file diff --git a/src/modest.css b/src/modest.css deleted file mode 100644 index 4393fc9..0000000 --- a/src/modest.css +++ /dev/null @@ -1,200 +0,0 @@ -@media print { - *, - *:before, - *:after { - background: transparent !important; - color: #000 !important; - box-shadow: none !important; - text-shadow: none !important; - } - - a, - a:visited { - text-decoration: underline; - } - - a[href]:after { - content: " (" attr(href) ")"; - } - - abbr[title]:after { - content: " (" attr(title) ")"; - } - - a[href^="#"]:after, - a[href^="javascript:"]:after { - content: ""; - } - - pre, - blockquote { - border: 1px solid #999; - page-break-inside: avoid; - } - - thead { - display: table-header-group; - } - - tr, - img { - page-break-inside: avoid; - } - - img { - max-width: 100% !important; - } - - p, - h2, - h3 { - orphans: 3; - widows: 3; - } - - h2, - h3 { - page-break-after: avoid; - } -} - -pre, -code { - font-family: Menlo, Monaco, "Courier New", monospace; -} - -pre { - padding: .5rem; - line-height: 1.25; - overflow-x: scroll; -} - -a, -a:visited { - color: #3498db; -} - -a:hover, -a:focus, -a:active { - color: #2980b9; -} - -.modest-no-decoration { - text-decoration: none; -} - -html { - font-size: 12px; -} - -@media screen and (min-width: 32rem) and (max-width: 48rem) { - html { - font-size: 15px; - } -} - -@media screen and (min-width: 48rem) { - html { - font-size: 16px; - } -} - -p, -.modest-p { - font-size: 1rem; - margin-bottom: 1.3rem; -} - -h1, -.modest-h1, -h2, -.modest-h2, -h3, -.modest-h3, -h4, -.modest-h4 { - margin: 1.414rem 0 .5rem; - font-weight: inherit; - line-height: 1.42; -} - -h1, -.modest-h1 { - margin-top: 0; - font-size: 3.998rem; -} - -h2, -.modest-h2 { - font-size: 2.827rem; -} - -h3, -.modest-h3 { - font-size: 1.999rem; -} - -h4, -.modest-h4 { - font-size: 1.414rem; -} - -h5, -.modest-h5 { - font-size: 1.121rem; -} - -h6, -.modest-h6 { - font-size: .88rem; -} - -small, -.modest-small { - font-size: .707em; -} - -/* https://github.com/mrmrs/fluidity */ - -img, -canvas, -iframe, -video, -svg, -select, -textarea { - max-width: 100%; -} - -@import url(https://fonts.googleapis.com/css?family=Open+Sans+Condensed:300,300italic,700); - -@import url(https://fonts.googleapis.com/css?family=Arimo:700,700italic); - -h1, -h2, -h3, -h4, -h5, -h6 { - font-family: Arimo, Helvetica, sans-serif; -} - -h1, -h2, -h3 { - border-bottom: 2px solid #fafafa; - margin-bottom: 1.15rem; - padding-bottom: .5rem; - text-align: left; -} - -blockquote { - border-left: 8px solid #fafafa; - padding: 1rem; -} - -pre, -code { - background-color: #fafafa; -} diff --git a/src/releases.css b/src/releases.css deleted file mode 100755 index 88381b4..0000000 --- a/src/releases.css +++ /dev/null @@ -1,6 +0,0 @@ -#releases-content .tab-content { - border: 1px solid #d0d0d0; - border-radius: 0.25em; - padding: 1em; - padding-bottom: 1.3em; -} diff --git a/src/releases.js b/src/releases.js deleted file mode 100755 index 27447a5..0000000 --- a/src/releases.js +++ /dev/null @@ -1,73 +0,0 @@ -/* App starts here */ -import React, { useState, useEffect } from "react"; -import Markdown from "react-markdown/with-html"; -import Nav from "react-bootstrap/Nav"; -import Col from "react-bootstrap/Col"; -import Row from "react-bootstrap/Row"; -import Tab from "react-bootstrap/Tab"; -import MarkdownLoader from "./markdown-loader.js"; - -import "./releases.css"; - -class ReleasePicker extends React.Component { - constructor(props) { - super(props); - } - - render () { - return ( - - - - - - - - - - - - - - - - - - - - - - ) - } -} - -class Releases extends React.Component { - constructor(props) { - super(props); - } - - render () { - return ( -
-
- - -
-
- ); - } -} - -export default Releases; diff --git a/src/solutions.css b/src/solutions.css deleted file mode 100644 index 9c596db..0000000 --- a/src/solutions.css +++ /dev/null @@ -1,197 +0,0 @@ - .solution { - display: flex; - flex-direction: column; - max-width: 90ex; - margin: 0 auto; -} - -.solution-details { - display: flex; - flex-direction: column; - position: relative; -} - -.solution-details .solution-categories { - position: absolute; - right: 0; - top: 0; -} - -.solution .Markdown { - margin-top: 0.5em; -} - -.solution-field { - display: flex; - flex-direction: row; -} - -.solution-field :first-child { - width: 10em; -} - -.solution-field :last-child { - flex-grow: 1 -} - -.solution-back { - cursor: pointer; - font-weight: bold; - line-height: 1.1em; - height: 1.1em; - margin-bottom: 0.5em; - border-bottom: 1px solid #eee; -} - -.solution-back:hover { - text-decoration: underline; -} - -.solutions-picker { - display: flex; - flex-wrap: wrap; - flex-direction: row; - overflow: auto; -} - -.solution-card { - display: flex; - flex-direction: column; - width: 12em; - height: 8em; - border: 1px solid black; - margin: 1em; - box-sizing: border-box; - overflow: hidden; - cursor: pointer; -} - -.solution-marque { - display: flex; -} - -.solution-clone .Markdown { - font-size: 0.8em; -} - -.solution-overview { - flex-grow: 10; -} - -.solution-image { - flex-grow: 1; - width: 10em; - height: 6em; - background: white; - background-size: contain; - background-repeat: no-repeat; - background-position: left 50%; -} - -.solution-info { - display: flex; - flex-direction: column; - height: 5em; - padding: 0.5em; - overflow: hidden; - font-size: 0.8em; - line-height: 1em; -} - -.solution-title { - text-overflow: ellipsis; - overflow: hidden; - padding-bottom: 0.25em; -} - - -.solution-summary { - flex-grow: 1; - font-size: 0.9em; - text-overflow: ellipsis; - overflow: hidden; - line-height: 1.1em; -} - -.solution-card:hover { - box-shadow: 0px 2px 5px rgba(0, 0, 0, 0.5); -} - -.solution-category { - border: 3px solid green; -} - -.solution-category-tab > .nav-item { - display: flex; -/* - width: 8em; - height: 8em; -*/ - text-align: left; - flex-direction: column; - justify-content: flex-end; - background-size: auto 50%; - background-repeat: no-repeat; - background-position: 0.5em 0.5em; - padding-left: 2em; - min-width: 8em; -} - -.solution-category-tab .nav-item[data-rb-event-key=media] { - background-image: url(../assets/solutions-media.png); -} - -.solution-category-tab .nav-item[data-rb-event-key=compute] { - background-image: url(../assets/solutions-compute.png); -} - -.solution-category-tab .nav-item[data-rb-event-key=render] { - background-image: url(../assets/solutions-render.png); -} - -.solution-category-tab .nav-item[data-rb-event-key=all] { - background-image: url(../assets/solutions-all.png); -} - -.tab-content { - border: 1px solid #d0d0d0; - border-top-color: transparent; - border-bottom-left-radius: 0.25em; - border-bottom-right-radius: 0.25em; - padding: 1em; - padding-bottom: 1.3em; -} - -p { - margin: 1em 0; -} - -p:last-child { - margin-bottom: 0em; -} - -.Markdown table { - min-width: 75%; - margin: 1em 0 1em 0; -} - -.Markdown table thead { - background-color: #555; - color: white; - vertical-align: middle; -} - -.Markdown h1, -.Markdown h2, -.Markdown h3 { - margin-top: 1em; - font-size: 1.1em; -} - -.Markdown h3 { - color: #333; -} - -.nav.nav-tabs { - margin-top: 1em; -} diff --git a/src/solutions.js b/src/solutions.js deleted file mode 100644 index 3497b20..0000000 --- a/src/solutions.js +++ /dev/null @@ -1,247 +0,0 @@ -/* App starts here */ -import React, { useState, useEffect } from "react"; -import ReactMarkdown from "react-markdown/with-html"; -import CodeBlock from "./CodeBlock"; -import MarkdownLoader from "./markdown-loader"; -import Tab from "react-bootstrap/Tab"; -import Tabs from "react-bootstrap/Tabs"; -import Col from "react-bootstrap/Col"; -import Row from "react-bootstrap/Row"; - -import "./solutions.css"; - -const solutions = [ { - category: "HPC", - title: "intel-hpc-bench", - asset: "hpc.png", - summary: "HPC Benchmark workloads", - git: "https://gitlab.devtools.intel.com/vtt/sws/osgc/solutions/intel-hcp-bench" - }, { - category: "AI/ML", - title: "intel-pytorch", - asset: "intel-pytorch.png", - summary: "basic pytorch container", - git: "https://gitlab.devtools.intel.com/vtt/sws/osgc/solutions/intel-pytorch" - },/* - { - category: "compute", - title: "intel-efficientnet", - summary: "No summary provided", - git: "https://gitlab.devtools.intel.com/vtt/sws/osgc/solutions/intel-efficientnet" - }, - { - category: "compute", - title: "intel-deepspeech", - summary: "Container featuring the Mozilla DeepSpeech speech-to-text implementation in tensorflow.", - git: "https://gitlab.devtools.intel.com/vtt/sws/osgc/solutions/intel-deepspeech" - },*/ - /*{ - category: "compute", - title: "intel-deepvoice3", - summary: "Deepvoice3 text to speech container using Intel GPU and deepspeech3 pytorch.", - git: "https://gitlab.devtools.intel.com/vtt/sws/osgc/solutions/intel-deepvoice3" - },*/ - /*{ - category: "compute", - title: "intel-rl", - summary: "Intel reinforcement learning container", - git: "https://gitlab.devtools.intel.com/vtt/sws/osgc/solutions/intel-rl" - },*/ - { - category: "AI/ML,HPC", - title: "intel-compute-clinfo", - asset: "intel-compute-clinfo.png", - summary: "Basic container installing OpenCL runtime; testing packages", - git: "https://gitlab.devtools.intel.com/vtt/sws/osgc/solutions/intel-compute-clinfo" - }, - { - category: "Media", - title: "intel-media-ffmpeg", - asset: "intel-media-ffmpeg.svg", - summary: "Perform various media tests using ffmpeg", - git: "https://gitlab.devtools.intel.com/vtt/sws/osgc/solutions/intel-media-ffmpeg" - } -]; - -class CategoryPicker extends React.Component { - constructor(props) { - super(props); - console.log("CategoryPicker"); - this.clearFilter = this.clearFilter.bind(this); - } - - clearFilter() { - if (window.clearFilter) { - window.clearFilter(); - } - } - - render() { - const categories = []; - solutions.forEach(solution => { - solution.category.split(",").forEach(category => { - if (categories.indexOf(category) != -1) { - return; - } - categories.push(category); - }) - }); - const tabs = categories.sort().map(category => ( - - - - )); - return ( - - { tabs } - - - - - - - - ); - } -} - -class SolutionsPicker extends React.Component { - constructor(props) { - super(props); - console.log("SolutionsPicker"); - } - - render () { - const solutionsContent = solutions - .filter(solution => this.props.filter == "*" || solution.category == this.props.filter) - .sort((A, B) => { return A.title.localeCompare(B.title) }) - .map((solution, i) => { - return ( -
-
-
-
-
{solution.title}
-
{solution.summary}
-
-
- )}); - - return ( -
- { solutionsContent } -
- ); - } -} - -class Solution extends React.Component { - constructor(props) { - super(props); - console.log("Solution: ", this.props.solution); - } - - formatString(string) { - if (/^https?:\/\//.exec(string)) { - return ({string}); - } else { - return string; - } - } - - solutionContent(solution) { - let markdownPath = "", basename = ""; - if (solution.git) { - basename = solution.git.replace(/^.*\/([^/]+)$/, "$1"); - if (basename) { - markdownPath = "solutions/" + basename + ".md"; - } - } - if (!basename) { - return (); - } - return (); - } - - render() { - const solution = this.props.solution; - - return ( -
-
Back
-
-
-
-
-
{solution.category}
-
{solution.title}
-
{solution.summary}
-
-
-
- -
-
- { this.solutionContent(this.props.solution) } -
- ) - } -} - -class Solutions extends React.Component { - constructor(props) { - super(props); - console.log("Solutions"); - this.state = { - activeSolution: null - }; - this.onSolutionChanged = this.onSolutionChanged.bind(this); - } - - onSolutionChanged(solution) { - console.log("onSolutionChanged: " + solution); - this.setState({ - activeSolution: solution - }); - } - - render () { - return ( -
-
-
This site is a work in progress and under active development.
- { - this.state.activeSolution ? - : - - } -
-
- ); - } -} - -export default Solutions; diff --git a/src/technologies.css b/src/technologies.css deleted file mode 100644 index 8ead195..0000000 --- a/src/technologies.css +++ /dev/null @@ -1,49 +0,0 @@ -#technologies-content .tab-content { - border: 1px solid #d0d0d0; - border-radius: 0.25em; - padding: 1em; - padding-bottom: 1.3em; -} - -.tab-content { - border: 1px solid #d0d0d0; - border-top-color: transparent; - border-bottom-left-radius: 0.25em; - border-bottom-right-radius: 0.25em; - padding: 1em; - padding-bottom: 1.3em; -} - -.tab-content p { - margin: 1em 0; -} - -.tab-content p:last-child { - margin-bottom: 0em; -} - -.tab-content .Markdown table { - min-width: 75%; - margin: 1em 0 1em 0; -} - -.tab-content .Markdown table thead { - background-color: #555; - color: white; - vertical-align: middle; -} - -.tab-content .Markdown h1, -.tab-content .Markdown h2, -.tab-content .Markdown h3 { - margin-top: 1em; - font-size: 1.1em; -} - -.tab-content .Markdown h3 { - color: #333; -} - -.nav.nav-tabs { - margin-top: 1em; -} \ No newline at end of file diff --git a/src/technologies.js b/src/technologies.js deleted file mode 100644 index 735f235..0000000 --- a/src/technologies.js +++ /dev/null @@ -1,90 +0,0 @@ -/* App starts here */ -import React, { useState, useEffect } from "react"; -import Markdown from "react-markdown/with-html"; -import Nav from "react-bootstrap/Nav"; -import Col from "react-bootstrap/Col"; -import Row from "react-bootstrap/Row"; -import Tab from "react-bootstrap/Tab"; -import MarkdownLoader from "./markdown-loader.js"; - -import "./technologies.css"; - -class TechnologyPicker extends React.Component { - constructor(props) { - super(props); - } - - render () { - return ( - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ) - } -} - -class Technologies extends React.Component { - constructor(props) { - super(props); - } - - render () { - return ( -
-
- -
-
- ); - } -} - -export default Technologies;