diff --git a/landing/competitor-data.js b/landing/competitor-data.js --- a/landing/competitor-data.js +++ b/landing/competitor-data.js @@ -1,6 +1,7 @@ // @flow const competitors = Object.freeze({ + GENERAL: 'general', DISCORD: 'discord', KEYBASE: 'keybase', MATRIX: 'matrix', @@ -27,6 +28,96 @@ }; const competitorData: { [key: string]: Competitor } = Object.freeze({ + general: { + id: 'general', + name: 'General', + featureComparison: [ + { + title: 'Tree structure', + comingSoon: false, + competitorDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + commDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + competitorDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + commDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + }, + { + title: 'Background tab', + comingSoon: false, + competitorDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + commDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + competitorDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + commDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + }, + { + title: 'Integrated calendar', + comingSoon: false, + competitorDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + commDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + competitorDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + commDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + }, + { + title: 'Notif controls', + comingSoon: false, + competitorDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + commDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + competitorDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + commDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + }, + { + title: 'Unique threading model', + comingSoon: false, + competitorDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + commDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + competitorDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + commDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + }, + { + title: 'Inbox zero workflow', + comingSoon: false, + competitorDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + commDescriptionShort: + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin.', + competitorDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + commDescriptionLong: [ + 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque vulputate vestibulum leo, vel sollicitudin est faucibus eu. Aliquam a nisi id mauris aliquet viverra. Vivamus blandit iaculis libero, vitae hendrerit mi posuere sodales.', + ], + }, + ], + }, discord: { id: 'discord', name: 'Discord', @@ -525,4 +616,4 @@ }, }); -export { competitorData }; +export { competitors, competitorData }; diff --git a/landing/competitor-logo.react.js b/landing/competitor-logo.react.js --- a/landing/competitor-logo.react.js +++ b/landing/competitor-logo.react.js @@ -8,7 +8,7 @@ import SignalLogo from './assets/signal-logo.react.js'; import SlackLogo from './assets/slack-logo.react.js'; import TelegramLogo from './assets/telegram-logo.react.js'; -import type { Competitors } from './competitor-data.js'; +import { competitors, type Competitors } from './competitor-data.js'; type Props = { +name: Competitors, @@ -18,18 +18,18 @@ function CompetitorLogo(props: Props): React.Node { const { name, size } = props; - let competitorLogo; - if (name === 'discord') { + let competitorLogo = null; + if (name === competitors.DISCORD) { competitorLogo = ; - } else if (name === 'keybase') { + } else if (name === competitors.KEYBASE) { competitorLogo = ; - } else if (name === 'matrix') { + } else if (name === competitors.MATRIX) { competitorLogo = ; - } else if (name === 'signal') { + } else if (name === competitors.SIGNAL) { competitorLogo = ; - } else if (name === 'slack') { + } else if (name === competitors.SLACK) { competitorLogo = ; - } else { + } else if (name === competitors.TELEGRAM) { competitorLogo = ; }