{"version":3,"sources":["webpack:///./src/resources/data.js","webpack:///./src/pages/community.tsx"],"names":["pmc","name","github","image","Databases","title","href","imgName","width","links","communityContainer","getInvolvedContainer","Community","pmcList","map","e","indexOf","target","rel","key","className","hoverable","style","size","cover","alt","src","paddingRight","paddingTop","css","bordered","dataSource","renderItem","link","post","Item"],"mappings":"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","file":"component---src-pages-community-tsx-5f448fb09483bc3eb395.js","sourcesContent":["/**\n * Licensed to the Apache Software Foundation (ASF) under one\n * or more contributor license agreements.  See the NOTICE file\n * distributed with this work for additional information\n * regarding copyright ownership.  The ASF licenses this file\n * to you under the Apache License, Version 2.0 (the\n * \"License\"); you may not use this file except in compliance\n * with the License.  You may obtain a copy of the License at\n *\n *   http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied.  See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\nexport const pmc = [\n  {\n    name: ' Aaron Suddjian',\n    github: 'https://github.com/suddjian',\n    image: 'https://github.com/suddjian.png',\n  },\n  {\n    name: 'Beto Dealmeida',\n    github: 'https://github.com/betodealmeida',\n    image: 'https://github.com/betodealmeida.png',\n  },\n  {\n    name: 'Bogdan Kyryliuk',\n    github: 'https://github.com/bkyryliuk',\n    image: 'https://github.com/bkyryliuk.png',\n  },\n  {\n    name: 'Chris Williams',\n    github: 'https://github.com/williaster',\n    image: 'https://github.com/williaster.png',\n  },\n  {\n    name: 'Craig Rueda',\n    github: 'https://github.com/craig-rueda',\n    image: 'https://github.com/craig-rueda.png',\n  },\n  {\n    name: 'Daniel Gaspar',\n    github: 'https://github.com/dpgaspar',\n    image: 'https://github.com/dpgaspar.png',\n  },\n  {\n    name: 'Erik Ritker',\n    github: 'https://github.com/etr2460',\n    image: 'https://github.com/etr2460.png',\n  },\n  {\n    name: 'Evan Rusackas',\n    github: 'https://github.com/rusackas',\n    image: 'https://github.com/rusackas.png',\n  },\n\n  {\n    name: 'Grace Guo',\n    github: 'https://github.com/graceguo-supercat',\n    image: 'https://github.com/graceguo-supercat.png',\n  },\n\n  {\n    name: 'Jeff Feng',\n    github: 'https://github.com/jfeng15',\n    image: 'https://github.com/jfeng15.png',\n  },\n\n  {\n    name: 'Jesse Yang',\n    github: 'https://github.com/ktmud',\n    image: 'https://github.com/ktmud.png',\n  },\n\n  {\n    name: 'John Bodley',\n    github: 'https://github.com/john-bodley',\n    image: 'https://github.com/john-bodley.png',\n  },\n\n  {\n    name: 'Krist Wongsuphasawat',\n    github: 'https://github.com/kristw',\n    image: 'https://github.com/kristw.png',\n  },\n  {\n    name: 'Maxime Beauchemin',\n    github: 'https://github.com/mistercrunch',\n    image: 'https://github.com/mistercrunch.png',\n  },\n\n  {\n    name: 'Michelle Thomas',\n    github: 'https://github.com/michellethomas',\n    image: 'https://github.com/michellethomas.png',\n  },\n\n  {\n    name: 'Nishant Bangarwa',\n    github: 'https://github.com/nishantmonu51',\n    image: 'https://github.com/nishantmonu51.png',\n  },\n\n  {\n    name: 'Tai Dupree',\n    github: 'https://github.com/nytai',\n    image: 'https://github.com/nytai.png',\n  },\n\n  {\n    name: 'Ville Brofeldt',\n    github: 'https://github.com/villebro',\n    image: 'https://github.com/villebro.png',\n  },\n  {\n    name: 'Will Barrett',\n    github: 'https://github.com/willbarrett',\n    image: 'https://github.com/willbarrett.png',\n  },\n];\n\nexport const Databases = [\n  {\n    title: 'Amazon Redshfit',\n    href: 'https://aws.amazon.com/redshift/',\n    imgName: 'aws-redshift.png',\n    width: 50,\n  },\n  {\n    title: 'Apache Druid',\n    href: 'http://druid.io/',\n    imgName: 'druid.png',\n  },\n  {\n    title: 'Apache Kylin',\n    href: 'http://kylin.apache.org/',\n    imgName: 'apache-kylin.png',\n  },\n  {\n    title: 'BigQuery',\n    href: 'https://cloud.google.com/bigquery/',\n    imgName: 'googleBQ.png',\n  },\n  {\n    title: 'ClickHouse',\n    href: 'https://clickhouse.tech/',\n    imgName: 'clickhouse.png',\n  },\n  {\n    title: 'Dremio',\n    href: 'https://dremio.com/',\n    imgName: 'dremio.png',\n  },\n  {\n    title: 'Exasol',\n    href: 'https://www.exasol.com/en/',\n    imgName: 'exasol.png',\n  },\n  {\n    title: 'FireBirdSql',\n    href: 'https://firebirdsql.org/',\n    imgName: 'firebird.png',\n  },\n  {\n    title: 'Green Plum',\n    href: 'https://greenplum.org/',\n    imgName: 'greenplum.png',\n  },\n  {\n    title: 'IBM Db2',\n    href: 'https://www.ibm.com/analytics/db2',\n    imgName: 'ibmdb2.png',\n  },\n  {\n    title: 'MySQL',\n    href: 'https://www.mysql.com/',\n    imgName: 'mysql.png',\n  },\n  {\n    title: 'Microsoft SqlServer',\n    href: 'https://www.microsoft.com/en-us/sql-server',\n    imgName: 'msql.png',\n  },\n  {\n    title: 'MonetDB',\n    href: 'https://www.monetdb.org/',\n    imgName: 'monet.png',\n  },\n  {\n    title: 'Oracle',\n    href: 'https://www.oracle.com/database/',\n    imgName: 'oraclelogo.png',\n  },\n  {\n    title: 'PostgresSQL',\n    href: 'https://www.postgresql.org/',\n    imgName: 'postsql.png',\n  },\n  {\n    title: 'Presto',\n    href: 'https://prestodb.io/',\n    imgName: 'presto-og.png',\n  },\n  {\n    title: 'Snowflake',\n    href: 'https://www.snowflake.com/',\n    imgName: 'snowflake.png',\n  },\n  {\n    title: 'SQLite',\n    href: 'https://www.sqlite.org/index.html',\n    imgName: 'sqllite.png',\n  },\n  {\n    title: 'Vertica',\n    href: 'https://www.vertica.com/',\n    imgName: 'vertica.png',\n  },\n  {\n    title: 'Hologres',\n    href: 'https://www.alibabacloud.com/product/hologres',\n    imgName: 'hologres.png',\n  },\n];\n","/**\n * Licensed to the Apache Software Foundation (ASF) under one\n * or more contributor license agreements.  See the NOTICE file\n * distributed with this work for additional information\n * regarding copyright ownership.  The ASF licenses this file\n * to you under the Apache License, Version 2.0 (the\n * \"License\"); you may not use this file except in compliance\n * with the License.  You may obtain a copy of the License at\n *\n *   http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied.  See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\nimport React from 'react';\nimport { css } from '@emotion/core';\nimport { Card, List } from 'antd';\nimport { GithubOutlined } from '@ant-design/icons';\nimport SEO from '../components/seo';\nimport Layout from '../components/layout';\nimport { pmc } from '../resources/data';\n\nconst links = [\n  [\n    'https://apache-superset.slack.com/join/shared_invite/zt-g8lpruog-HeqpgYrwdfrD5OYhlU7hPQ#/',\n    'Slack',\n    'interact with other Superset users and community members',\n  ],\n  [\n    'https://github.com/apache/superset',\n    'GitHub',\n    'create tickets to report issues, report bugs, and suggest new features',\n  ],\n  [\n    'https://lists.apache.org/list.html?dev@superset.apache.org',\n    'dev@ Mailing List',\n    'participate in conversations with committers and contributors',\n  ],\n  [\n    'https://stackoverflow.com/questions/tagged/superset+apache-superset',\n    'Stack Overflow',\n    'our growing knowledge base',\n  ],\n  [\n    'https://www.meetup.com/Global-Apache-Superset-Community-Meetup/',\n    'Superset Meetup Group',\n    'join our monthly virtual meetups and register for any upcoming events',\n  ],\n  [\n    'https://github.com/apache/superset/blob/master/INTHEWILD.md',\n    'Organizations',\n    'a list of some of the organizations using Superset in production',\n  ],\n  [\n    'https://github.com/apache-superset/awesome-apache-superset',\n    'Contributors Guide',\n    'Interested in contributing? Learn how to contribute and best practices',\n  ],\n];\n\nconst communityContainer = css`\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: space-around;\n  margin: 0 auto;\n  overflow: auto;\n  .communityCard {\n    font-size: 12px;\n    overflow: hidden;\n    margin: 10px 10px;\n    .ant-card-meta-title {\n      text-overflow: clip;\n      white-space: normal;\n    }\n    .ant-card-body {\n      padding: 8px;\n      display:inline-block;\n      white-space: nowrap;\n    }\n  }\n`;\n\nconst getInvolvedContainer = css`\n  margin-bottom: 25px;\n`;\n\nconst Community = () => {\n  const pmcList = pmc.map((e) => {\n    const name = e.name.indexOf(' ');\n    return (\n      <a href={e.github} target=\"_blank\" rel=\"noreferrer\" key={name}>\n        <Card\n          className=\"communityCard\"\n          hoverable\n          style={{ width: '150px' }}\n          size=\"small\"\n          cover={<img alt=\"example\" src={e.image} />}\n        >\n          <GithubOutlined style={{ paddingRight: 3, paddingTop: 3 }} />\n          {e.name}\n        </Card>\n      </a>\n    );\n  });\n  return (\n    <Layout>\n      <div className=\"contentPage\">\n        <SEO title=\"Community\" />\n        <section>\n          <h1 className=\"title\">Community</h1>\n          Get involved in our welcoming, fast growing community!\n        </section>\n        <section className=\"joinCommunity\">\n          <div css={getInvolvedContainer}>\n            <h2>Get involved!</h2>\n            <List\n              size=\"small\"\n              bordered\n              dataSource={links}\n              renderItem={([href, link, post]) => (\n                <List.Item>\n                  <a href={href}>{link}</a>\n                  {' '}\n                  -\n                  {' '}\n                  {post}\n                </List.Item>\n              )}\n            />\n          </div>\n        </section>\n        <section className=\"ppmc\">\n          <h2>Apache Committers</h2>\n          <div css={communityContainer}>{pmcList}</div>\n        </section>\n      </div>\n    </Layout>\n  );\n};\n\nexport default Community;\n"],"sourceRoot":""}