(window.webpackJsonp=window.webpackJsonp||[]).push([[12],{Oyq8:function(e,t,i){"use strict";i.d(t,"b",(function(){return a})),i.d(t,"a",(function(){return s}));var a=[{name:" Aaron Suddjian",github:"https://github.com/suddjian",image:"https://github.com/suddjian.png"},{name:"Beto Dealmeida",github:"https://github.com/betodealmeida",image:"https://github.com/betodealmeida.png"},{name:"Bogdan Kyryliuk",github:"https://github.com/bkyryliuk",image:"https://github.com/bkyryliuk.png"},{name:"Chris Williams",github:"https://github.com/williaster",image:"https://github.com/williaster.png"},{name:"Craig Rueda",github:"https://github.com/craig-rueda",image:"https://github.com/craig-rueda.png"},{name:"Daniel Gaspar",github:"https://github.com/dpgaspar",image:"https://github.com/dpgaspar.png"},{name:"Erik Ritker",github:"https://github.com/etr2460",image:"https://github.com/etr2460.png"},{name:"Evan Rusackas",github:"https://github.com/rusackas",image:"https://github.com/rusackas.png"},{name:"Grace Guo",github:"https://github.com/graceguo-supercat",image:"https://github.com/graceguo-supercat.png"},{name:"Jeff Feng",github:"https://github.com/jfeng15",image:"https://github.com/jfeng15.png"},{name:"Jesse Yang",github:"https://github.com/ktmud",image:"https://github.com/ktmud.png"},{name:"John Bodley",github:"https://github.com/john-bodley",image:"https://github.com/john-bodley.png"},{name:"Krist Wongsuphasawat",github:"https://github.com/kristw",image:"https://github.com/kristw.png"},{name:"Maxime Beauchemin",github:"https://github.com/mistercrunch",image:"https://github.com/mistercrunch.png"},{name:"Michelle Thomas",github:"https://github.com/michellethomas",image:"https://github.com/michellethomas.png"},{name:"Nishant Bangarwa",github:"https://github.com/nishantmonu51",image:"https://github.com/nishantmonu51.png"},{name:"Tai Dupree",github:"https://github.com/nytai",image:"https://github.com/nytai.png"},{name:"Ville Brofeldt",github:"https://github.com/villebro",image:"https://github.com/villebro.png"},{name:"Will Barrett",github:"https://github.com/willbarrett",image:"https://github.com/willbarrett.png"}];void 0!==a&&a&&a===Object(a)&&Object.isExtensible(a)&&!a.hasOwnProperty("__filemeta")&&Object.defineProperty(a,"__filemeta",{configurable:!0,value:{name:"pmc",filename:"src/resources/data.js"}}),void 0!==a&&a&&a===Object(a)&&Object.isExtensible(a)&&!a.hasOwnProperty("__filemeta")&&Object.defineProperty(a,"__filemeta",{configurable:!0,value:{name:"pmc",filename:"src/resources/data.js"}});var s=[{title:"Amazon Redshfit",href:"https://aws.amazon.com/redshift/",imgName:"aws-redshift.png",width:50},{title:"Apache Druid",href:"http://druid.io/",imgName:"druid.png"},{title:"Apache Kylin",href:"http://kylin.apache.org/",imgName:"apache-kylin.png"},{title:"BigQuery",href:"https://cloud.google.com/bigquery/",imgName:"googleBQ.png"},{title:"ClickHouse",href:"https://clickhouse.tech/",imgName:"clickhouse.png"},{title:"Dremio",href:"https://dremio.com/",imgName:"dremio.png"},{title:"Exasol",href:"https://www.exasol.com/en/",imgName:"exasol.png"},{title:"FireBirdSql",href:"https://firebirdsql.org/",imgName:"firebird.png"},{title:"Green Plum",href:"https://greenplum.org/",imgName:"greenplum.png"},{title:"IBM Db2",href:"https://www.ibm.com/analytics/db2",imgName:"ibmdb2.png"},{title:"MySQL",href:"https://www.mysql.com/",imgName:"mysql.png"},{title:"Microsoft SqlServer",href:"https://www.microsoft.com/en-us/sql-server",imgName:"msql.png"},{title:"MonetDB",href:"https://www.monetdb.org/",imgName:"monet.png"},{title:"Oracle",href:"https://www.oracle.com/database/",imgName:"oraclelogo.png"},{title:"PostgresSQL",href:"https://www.postgresql.org/",imgName:"postsql.png"},{title:"Presto",href:"https://prestodb.io/",imgName:"presto-og.png"},{title:"Snowflake",href:"https://www.snowflake.com/",imgName:"snowflake.png"},{title:"SQLite",href:"https://www.sqlite.org/index.html",imgName:"sqllite.png"},{title:"Vertica",href:"https://www.vertica.com/",imgName:"vertica.png"},{title:"Hologres",href:"https://www.alibabacloud.com/product/hologres",imgName:"hologres.png"}];void 0!==s&&s&&s===Object(s)&&Object.isExtensible(s)&&!s.hasOwnProperty("__filemeta")&&Object.defineProperty(s,"__filemeta",{configurable:!0,value:{name:"Databases",filename:"src/resources/data.js"}}),void 0!==s&&s&&s===Object(s)&&Object.isExtensible(s)&&!s.hasOwnProperty("__filemeta")&&Object.defineProperty(s,"__filemeta",{configurable:!0,value:{name:"Databases",filename:"src/resources/data.js"}})},gbpr:function(e,t,i){"use strict";i.r(t);i("LXko");var a=i("VXEj"),s=(i("EpIQ"),i("bx4M")),r=(i("q1tI"),i("qKvR")),o=i("oN5p"),m=i("vrFN"),n=i("9Dj+"),g=i("Oyq8");var h=[["https://apache-superset.slack.com/join/shared_invite/zt-g8lpruog-HeqpgYrwdfrD5OYhlU7hPQ#/","Slack","interact with other Superset users and community members"],["https://github.com/apache/superset","GitHub","create tickets to report issues, report bugs, and suggest new features"],["https://lists.apache.org/list.html?dev@superset.apache.org","dev@ Mailing List","participate in conversations with committers and contributors"],["https://stackoverflow.com/questions/tagged/superset+apache-superset","Stack Overflow","our growing knowledge base"],["https://www.meetup.com/Global-Apache-Superset-Community-Meetup/","Superset Meetup Group","join our monthly virtual meetups and register for any upcoming events"],["https://github.com/apache/superset/blob/master/INTHEWILD.md","Organizations","a list of some of the organizations using Superset in production"],["https://github.com/apache-superset/awesome-apache-superset","Contributors Guide","Interested in contributing? Learn how to contribute and best practices"]],c={name:"8g5ten",styles:"display:flex;flex-wrap:wrap;justify-content:space-around;margin:0 auto;overflow:auto;.communityCard{font-size:12px;overflow:hidden;margin:10px 10px;.ant-card-meta-title{text-overflow:clip;white-space:normal;}.ant-card-body{padding:8px;display:inline-block;white-space:nowrap;}}"},p={name:"d2znx6",styles:"margin-bottom:25px;"},l=function(){var e=g.b.map((function(e){var t=e.name.indexOf(" ");return Object(r.jsx)("a",{href:e.github,target:"_blank",rel:"noreferrer",key:t},Object(r.jsx)(s.a,{className:"communityCard",hoverable:!0,style:{width:"150px"},size:"small",cover:Object(r.jsx)("img",{alt:"example",src:e.image})},Object(r.jsx)(o.a,{style:{paddingRight:3,paddingTop:3}}),e.name))}));return Object(r.jsx)(n.a,null,Object(r.jsx)("div",{className:"contentPage"},Object(r.jsx)(m.a,{title:"Community"}),Object(r.jsx)("section",null,Object(r.jsx)("h1",{className:"title"},"Community"),"Get involved in our welcoming, fast growing community!"),Object(r.jsx)("section",{className:"joinCommunity"},Object(r.jsx)("div",{css:p},Object(r.jsx)("h2",null,"Get involved!"),Object(r.jsx)(a.b,{size:"small",bordered:!0,dataSource:h,renderItem:function(e){var t=e[0],i=e[1],s=e[2];return Object(r.jsx)(a.b.Item,null,Object(r.jsx)("a",{href:t},i)," ","-"," ",s)}}))),Object(r.jsx)("section",{className:"ppmc"},Object(r.jsx)("h2",null,"Apache Committers"),Object(r.jsx)("div",{css:c},e))))};t.default=l,void 0!==l&&l&&l===Object(l)&&Object.isExtensible(l)&&!l.hasOwnProperty("__filemeta")&&Object.defineProperty(l,"__filemeta",{configurable:!0,value:{name:"Community",filename:"src/pages/community.tsx"}})}}]);
//# sourceMappingURL=component---src-pages-community-tsx-5f448fb09483bc3eb395.js.map