├── app ├── utils │ ├── storage │ │ ├── index.ts │ │ ├── storage.test.ts │ │ └── storage.ts │ ├── info.ts │ ├── delay.ts │ ├── ignore-warnings.ts │ ├── keychain.ts │ └── validate.ts ├── components │ ├── footer │ │ ├── index.ts │ │ ├── footer.props.ts │ │ ├── footer.story.tsx │ │ ├── footer.tsx │ │ └── footer.presets.ts │ ├── wallpaper │ │ ├── bg.png │ │ ├── bg@2x.png │ │ ├── wallpaper.props.ts │ │ ├── wallpaper.story.tsx │ │ ├── wallpaper.presets.ts │ │ └── wallpaper.tsx │ ├── icon │ │ ├── icons │ │ │ ├── bullet.png │ │ │ ├── bullet@2x.png │ │ │ ├── ladybug.png │ │ │ ├── arrow-left.png │ │ │ ├── arrow-left@2x.png │ │ │ └── index.ts │ │ ├── icon.props.ts │ │ ├── icon.tsx │ │ └── icon.story.tsx │ ├── travel-option │ │ ├── Car.png │ │ ├── Car@2x.png │ │ ├── Car@3x.png │ │ ├── Lightrail.png │ │ ├── Lightrail@2x.png │ │ ├── Lightrail@3x.png │ │ ├── travel-option.presets.ts │ │ ├── travel-option.props.ts │ │ ├── travel-option.story.tsx │ │ └── travel-option.tsx │ ├── gerding-theater │ │ ├── img.venue.png │ │ ├── img.venue@2x.png │ │ ├── img.venue@3x.png │ │ ├── gerding-theater.story.tsx │ │ └── gerding-theater.tsx │ ├── sponsors │ │ ├── logos │ │ │ ├── Bronze_G2i.png │ │ │ ├── Bronze_Modus.png │ │ │ ├── Gold_Sentry.png │ │ │ ├── Platinum_AWS.png │ │ │ ├── playstation.png │ │ │ ├── Additional_G2i.png │ │ │ ├── Bronze_Airship.png │ │ │ ├── Bronze_BuilderX.png │ │ │ ├── Bronze_Cambia.png │ │ │ ├── Bronze_Echobind.png │ │ │ ├── Bronze_Facebook.png │ │ │ ├── Bronze_G2i@2x.png │ │ │ ├── Bronze_G2i@3x.png │ │ │ ├── Bronze_Modus@2x.png │ │ │ ├── Bronze_Modus@3x.png │ │ │ ├── Gold_Callstack.png │ │ │ ├── Gold_Coinbase.png │ │ │ ├── Gold_Sentry@2x.png │ │ │ ├── Gold_Sentry@3x.png │ │ │ ├── Platinum_AWS@2x.png │ │ │ ├── Platinum_AWS@3x.png │ │ │ ├── Silver_Bugsnag.png │ │ │ ├── Silver_GoDaddy.png │ │ │ ├── playstation@2x.png │ │ │ ├── playstation@3x.png │ │ │ ├── Additional_G2i@2x.png │ │ │ ├── Additional_G2i@3x.png │ │ │ ├── Bronze_Airship@2x.png │ │ │ ├── Bronze_Airship@3x.png │ │ │ ├── Bronze_Cambia@2x.png │ │ │ ├── Bronze_Cambia@3x.png │ │ │ ├── Gold_Callstack@2x.png │ │ │ ├── Gold_Callstack@3x.png │ │ │ ├── Gold_Coinbase@2x.png │ │ │ ├── Gold_Coinbase@3x.png │ │ │ ├── Silver_Bugsnag@2x.png │ │ │ ├── Silver_Bugsnag@3x.png │ │ │ ├── Silver_GoDaddy@2x.png │ │ │ ├── Silver_GoDaddy@3x.png │ │ │ ├── Bronze_BuilderX@2x.png │ │ │ ├── Bronze_BuilderX@3x.png │ │ │ ├── Bronze_Echobind@2x.png │ │ │ ├── Bronze_Echobind@3x.png │ │ │ ├── Bronze_Facebook@2x.png │ │ │ ├── Bronze_Facebook@3x.png │ │ │ ├── Additional_bumped-alt.png │ │ │ ├── Platinum_Amazon_Alexa.png │ │ │ ├── Silver_ServerlessGuru.png │ │ │ ├── Additional_bumped-alt@2x.png │ │ │ ├── Additional_bumped-alt@3x.png │ │ │ ├── Platinum_Amazon_Alexa@2x.png │ │ │ ├── Platinum_Amazon_Alexa@3x.png │ │ │ ├── Silver_AmazonWebService.png │ │ │ ├── Silver_ServerlessGuru@2x.png │ │ │ ├── Silver_ServerlessGuru@3x.png │ │ │ ├── Additional_Playstation_Wifi.png │ │ │ ├── Silver_AmazonWebService@2x.png │ │ │ ├── Silver_AmazonWebService@3x.png │ │ │ ├── Additional_AWS_AA_AfterParty.png │ │ │ ├── Additional_DevLifts_Streches.png │ │ │ ├── Additional_Playstation_Wifi@2x.png │ │ │ ├── Additional_Playstation_Wifi@3x.png │ │ │ ├── Additional_SquarespaceBadges.png │ │ │ ├── Additional_AWS_AA_AfterParty@2x.png │ │ │ ├── Additional_AWS_AA_AfterParty@3x.png │ │ │ ├── Additional_DevLifts_Streches@2x.png │ │ │ ├── Additional_DevLifts_Streches@3x.png │ │ │ ├── Additional_SquarespaceBadges@2x.png │ │ │ └── Additional_SquarespaceBadges@3x.png │ │ ├── sponsors.story.tsx │ │ ├── sponsor-logo.tsx │ │ └── sponsor-logo.presets.ts │ ├── tab-icon │ │ ├── icons │ │ │ ├── map.active.png │ │ │ ├── info.active.png │ │ │ ├── map.inactive.png │ │ │ ├── calendar.active.png │ │ │ ├── info.active@2x.png │ │ │ ├── info.active@3x.png │ │ │ ├── info.inactive.png │ │ │ ├── map.active@2x.png │ │ │ ├── map.active@3x.png │ │ │ ├── map.inactive@2x.png │ │ │ ├── map.inactive@3x.png │ │ │ ├── profile.active.png │ │ │ ├── calendar.inactive.png │ │ │ ├── info.inactive@2x.png │ │ │ ├── info.inactive@3x.png │ │ │ ├── profile.active@2x.png │ │ │ ├── profile.active@3x.png │ │ │ ├── profile.inactive.png │ │ │ ├── calendar.active@2x.png │ │ │ ├── calendar.active@3x.png │ │ │ ├── calendar.inactive@2x.png │ │ │ ├── calendar.inactive@3x.png │ │ │ ├── profile.inactive@2x.png │ │ │ └── profile.inactive@3x.png │ │ ├── tab-icon.story.tsx │ │ └── tab-icon.tsx │ ├── title-bar │ │ ├── icon.back-arrow.png │ │ ├── icon.back-arrow@2x.png │ │ ├── icon.back-arrow@3x.png │ │ ├── title-bar.story.tsx │ │ └── title-bar.tsx │ ├── presented-by │ │ ├── images │ │ │ ├── bg.team.png │ │ │ ├── bg.team@2x.png │ │ │ ├── bg.team@3x.png │ │ │ ├── logo.infinitered.png │ │ │ ├── logo.infinitered@2x.png │ │ │ └── logo.infinitered@3x.png │ │ ├── presented-by.story.tsx │ │ └── presented-by.presets.ts │ ├── schedule-cell │ │ ├── images │ │ │ ├── lunch.png │ │ │ ├── panelist.png │ │ │ ├── afterparty-G2i.png │ │ │ ├── coffee-small.png │ │ │ ├── registration.png │ │ │ └── sponsor-bumped.png │ │ ├── schedule-cell.props.ts │ │ ├── render-time.tsx │ │ └── render-image.tsx │ ├── speaker-image │ │ ├── img.speaker.lg.png │ │ ├── img.speaker.lg@2x.png │ │ └── img.speaker.lg@3x.png │ ├── nearby-attractions │ │ ├── images │ │ │ ├── Close.png │ │ │ ├── Close@2x.png │ │ │ ├── Close@3x.png │ │ │ ├── star.filled.png │ │ │ ├── star.filled@2x.png │ │ │ ├── star.filled@3x.png │ │ │ ├── star.unfilled.png │ │ │ ├── star.unfilled@2x.png │ │ │ └── star.unfilled@3x.png │ │ ├── nearby-attractions.story.tsx │ │ ├── nearby-attractions.tsx │ │ ├── rating.tsx │ │ ├── render-link.tsx │ │ └── attraction.tsx │ ├── getting-to-chain-react │ │ ├── logo-lyft@1x.png │ │ ├── logo-lyft@2x.png │ │ ├── logo-lyft@3x.png │ │ ├── logo-uber@1x.png │ │ ├── logo-uber@2x.png │ │ ├── logo-uber@3x.png │ │ └── getting-to-chain-react.story.tsx │ ├── social-button │ │ ├── social_icon_assets │ │ │ ├── link.png │ │ │ ├── github.png │ │ │ ├── link@2x.png │ │ │ ├── link@3x.png │ │ │ ├── medium.png │ │ │ ├── slack.png │ │ │ ├── twitter.png │ │ │ ├── dribbble.png │ │ │ ├── facebook.png │ │ │ ├── github@2x.png │ │ │ ├── github@3x.png │ │ │ ├── instagram.png │ │ │ ├── medium@2x.png │ │ │ ├── medium@3x.png │ │ │ ├── slack@2x.png │ │ │ ├── slack@3x.png │ │ │ ├── dribbble@2x.png │ │ │ ├── dribbble@3x.png │ │ │ ├── email.icon.png │ │ │ ├── facebook@2x.png │ │ │ ├── facebook@3x.png │ │ │ ├── instagram@2x.png │ │ │ ├── instagram@3x.png │ │ │ ├── phone.icon.png │ │ │ ├── twitter@2x.png │ │ │ ├── twitter@3x.png │ │ │ ├── email.icon@2x.png │ │ │ ├── email.icon@3x.png │ │ │ ├── phone.icon@2x.png │ │ │ └── phone.icon@3x.png │ │ ├── social-button.props.ts │ │ ├── social-button.tsx │ │ ├── social-button.presets.ts │ │ └── social-button.story.tsx │ ├── form-row │ │ ├── form-row.tsx │ │ ├── form-row.props.tsx │ │ └── form-row.presets.ts │ ├── gradient-background │ │ ├── gradient-background.tsx │ │ └── gradient-background.story.tsx │ ├── back-button │ │ ├── back-button.story.tsx │ │ └── back-button.tsx │ ├── contact │ │ └── contact.story.tsx │ ├── schedule-nav │ │ ├── schedule-nav.story.tsx │ │ └── schedule-nav.tsx │ ├── survey-link │ │ ├── survey-link.tsx │ │ └── survey-link.story.tsx │ ├── wi-fi │ │ ├── wi-fi.story.tsx │ │ └── wi-fi.tsx │ ├── conduct │ │ ├── conduct.story.tsx │ │ └── conduct.tsx │ ├── content-link │ │ ├── content-link.story.tsx │ │ └── content-link.tsx │ ├── text │ │ ├── text.tsx │ │ └── text.props.ts │ ├── button │ │ ├── button.props.ts │ │ ├── button.tsx │ │ ├── button.story.tsx │ │ └── button.presets.ts │ ├── switch │ │ └── switch.props.ts │ ├── checkbox │ │ ├── checkbox.props.ts │ │ └── checkbox.tsx │ ├── header │ │ ├── header.props.ts │ │ ├── header.story.tsx │ │ └── header.tsx │ ├── bullet-item │ │ └── bullet-item.tsx │ ├── screen │ │ └── screen.props.ts │ ├── index.ts │ └── auto-image │ │ ├── auto-image.story.tsx │ │ └── auto-image.tsx ├── services │ ├── reactotron │ │ ├── index.ts │ │ ├── tron.ts │ │ ├── tron.web.ts │ │ └── reactotron-config.ts │ └── api │ │ ├── index.ts │ │ ├── api.types.ts │ │ ├── api-config.ts │ │ └── character-api.ts ├── config │ └── env.js ├── i18n │ ├── index.ts │ ├── translate.ts │ └── i18n.ts ├── screens │ ├── welcome │ │ ├── bg.welcome.png │ │ ├── bg.welcome@2x.png │ │ ├── bg.welcome@3x.png │ │ └── welcome-screen.tsx │ ├── event-details │ │ ├── images │ │ │ ├── bumped.png │ │ │ ├── img.break.png │ │ │ ├── img.event.png │ │ │ ├── img.event@2x.png │ │ │ ├── img.event@3x.png │ │ │ ├── img.partylogo.png │ │ │ ├── sponsor-bumped.png │ │ │ ├── img.partylogo@2x.png │ │ │ ├── img.partylogo@3x.png │ │ │ ├── img.afterparty-g2i.png │ │ │ ├── sponsor-bumped-thumb.png │ │ │ └── img.afterparty-squarespace.png │ │ ├── image-dimension-helpers.ts │ │ ├── render-workshop.tsx │ │ ├── render-default-event.tsx │ │ ├── render-talk.tsx │ │ ├── render-event-type.tsx │ │ ├── render-announcement.tsx │ │ ├── render-panel.tsx │ │ └── render-after-party.tsx │ ├── index.ts │ ├── schedule │ │ ├── render-event.tsx │ │ ├── schedule-content.tsx │ │ └── schedule-workshops.tsx │ ├── info │ │ └── info-screen.tsx │ └── code-of-conduct │ │ └── code-of-conduct-screen.tsx ├── navigators │ └── index.ts ├── theme │ ├── timing.ts │ ├── index.ts │ ├── fonts │ │ └── index.ts │ ├── spacing.ts │ ├── palette.ts │ ├── typography.ts │ └── color.ts └── models │ ├── setting │ ├── setting.test.ts │ └── setting.ts │ ├── event-store │ └── event-store.test.ts │ ├── speaker │ ├── speaker.test.ts │ └── speaker.ts │ ├── index.ts │ ├── extensions │ ├── with-environment.ts │ └── with-root-store.ts │ ├── root-store │ ├── root-store-context.ts │ └── root-store.ts │ ├── environment.ts │ └── event │ └── event.ts ├── react-native.config.js ├── e2e ├── config.json ├── reload.js ├── init.js ├── firstTest.spec.js └── README.md ├── test ├── mock-reactotron.ts ├── mock-i18n.ts ├── mock-file.ts ├── storyshots.test.ts ├── mock-async-storage.ts ├── setup.ts └── mock-react-native-image.ts ├── .prettierignore ├── assets ├── images │ ├── icon.png │ ├── splash.png │ ├── favicon.png │ ├── icon-ios.png │ ├── adaptive-icon.png │ ├── icon-default.png │ ├── splash-tablet-landscape.png │ └── splash-tablet-portrait.png └── fonts │ └── custom-fonts.md ├── storybook ├── views │ ├── index.ts │ ├── story.tsx │ ├── story-screen.tsx │ └── use-case.tsx ├── index.ts ├── storybook-registry.ts ├── toggle-storybook.web.tsx ├── storybook.tsx └── toggle-storybook.tsx ├── App.js ├── eas.json ├── ignite └── templates │ ├── model │ ├── NAME.test.ts.ejs │ └── NAME.ts.ejs │ ├── navigator │ └── NAME-navigator.tsx.ejs │ ├── component │ ├── NAME.story.tsx.ejs │ └── NAME.tsx.ejs │ └── screen │ └── NAME-screen.tsx.ejs ├── babel.config.js ├── .expo-shared └── README.md ├── .solidarity ├── tsconfig.json ├── webpack.config.js ├── bin ├── downloadExpoApp.sh └── postInstall ├── app.json └── .gitignore /app/utils/storage/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./storage" 2 | -------------------------------------------------------------------------------- /app/components/footer/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./footer" 2 | -------------------------------------------------------------------------------- /app/services/reactotron/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./reactotron" 2 | -------------------------------------------------------------------------------- /app/utils/info.ts: -------------------------------------------------------------------------------- 1 | export const TIMEZONE = "America/Los_Angeles" 2 | -------------------------------------------------------------------------------- /app/services/api/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./api" 2 | export * from "./api.types" 3 | -------------------------------------------------------------------------------- /react-native.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | assets: ["./assets/fonts/"], 3 | } 4 | -------------------------------------------------------------------------------- /app/config/env.js: -------------------------------------------------------------------------------- 1 | module.exports = __DEV__ ? require("./env.dev") : require("./env.prod") 2 | -------------------------------------------------------------------------------- /app/i18n/index.ts: -------------------------------------------------------------------------------- 1 | import "./i18n" 2 | export * from "./i18n" 3 | export * from "./translate" 4 | -------------------------------------------------------------------------------- /e2e/config.json: -------------------------------------------------------------------------------- 1 | { 2 | "setupFilesAfterEnv": ["./init.js"], 3 | "testEnvironment": "node" 4 | } 5 | -------------------------------------------------------------------------------- /test/mock-reactotron.ts: -------------------------------------------------------------------------------- 1 | declare const tron // eslint-disable-line @typescript-eslint/no-unused-vars 2 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | ios 3 | android 4 | .vscode 5 | ignite/ignite.json 6 | package.json 7 | -------------------------------------------------------------------------------- /e2e/reload.js: -------------------------------------------------------------------------------- 1 | const { reloadApp } = require("detox-expo-helpers") 2 | module.exports = { reloadApp } 3 | -------------------------------------------------------------------------------- /assets/images/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/assets/images/icon.png -------------------------------------------------------------------------------- /assets/images/splash.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/assets/images/splash.png -------------------------------------------------------------------------------- /assets/images/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/assets/images/favicon.png -------------------------------------------------------------------------------- /assets/images/icon-ios.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/assets/images/icon-ios.png -------------------------------------------------------------------------------- /storybook/views/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./story-screen" 2 | export * from "./story" 3 | export * from "./use-case" 4 | -------------------------------------------------------------------------------- /test/mock-i18n.ts: -------------------------------------------------------------------------------- 1 | jest.mock("i18n-js", () => { 2 | return { 3 | t: (key) => `${key}.test`, 4 | } 5 | }) 6 | -------------------------------------------------------------------------------- /app/services/reactotron/tron.ts: -------------------------------------------------------------------------------- 1 | import Reactotron from "reactotron-react-native" 2 | export const Tron = Reactotron 3 | -------------------------------------------------------------------------------- /app/services/reactotron/tron.web.ts: -------------------------------------------------------------------------------- 1 | import Reactotron from "reactotron-react-js" 2 | export const Tron = Reactotron 3 | -------------------------------------------------------------------------------- /app/components/wallpaper/bg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/wallpaper/bg.png -------------------------------------------------------------------------------- /assets/images/adaptive-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/assets/images/adaptive-icon.png -------------------------------------------------------------------------------- /assets/images/icon-default.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/assets/images/icon-default.png -------------------------------------------------------------------------------- /app/components/wallpaper/bg@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/wallpaper/bg@2x.png -------------------------------------------------------------------------------- /app/screens/welcome/bg.welcome.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/welcome/bg.welcome.png -------------------------------------------------------------------------------- /app/components/icon/icons/bullet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/icon/icons/bullet.png -------------------------------------------------------------------------------- /app/components/travel-option/Car.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/travel-option/Car.png -------------------------------------------------------------------------------- /app/components/icon/icons/bullet@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/icon/icons/bullet@2x.png -------------------------------------------------------------------------------- /app/components/icon/icons/ladybug.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/icon/icons/ladybug.png -------------------------------------------------------------------------------- /app/components/travel-option/Car@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/travel-option/Car@2x.png -------------------------------------------------------------------------------- /app/components/travel-option/Car@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/travel-option/Car@3x.png -------------------------------------------------------------------------------- /app/navigators/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./app-navigator" 2 | export * from "./navigation-utilities" 3 | // export other navigators from here 4 | -------------------------------------------------------------------------------- /app/screens/welcome/bg.welcome@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/welcome/bg.welcome@2x.png -------------------------------------------------------------------------------- /app/screens/welcome/bg.welcome@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/welcome/bg.welcome@3x.png -------------------------------------------------------------------------------- /app/theme/timing.ts: -------------------------------------------------------------------------------- 1 | export const timing = { 2 | /** 3 | * The duration (ms) for quick animations. 4 | */ 5 | quick: 300, 6 | } 7 | -------------------------------------------------------------------------------- /app/components/icon/icons/arrow-left.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/icon/icons/arrow-left.png -------------------------------------------------------------------------------- /assets/images/splash-tablet-landscape.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/assets/images/splash-tablet-landscape.png -------------------------------------------------------------------------------- /assets/images/splash-tablet-portrait.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/assets/images/splash-tablet-portrait.png -------------------------------------------------------------------------------- /test/mock-file.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | height: 100, 3 | width: 100, 4 | scale: 2.0, 5 | uri: "https://placekitten.com/200/200", 6 | } 7 | -------------------------------------------------------------------------------- /app/components/gerding-theater/img.venue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/gerding-theater/img.venue.png -------------------------------------------------------------------------------- /app/components/icon/icons/arrow-left@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/icon/icons/arrow-left@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_G2i.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_G2i.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/map.active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/map.active.png -------------------------------------------------------------------------------- /app/components/title-bar/icon.back-arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/title-bar/icon.back-arrow.png -------------------------------------------------------------------------------- /app/components/travel-option/Lightrail.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/travel-option/Lightrail.png -------------------------------------------------------------------------------- /app/screens/event-details/images/bumped.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/bumped.png -------------------------------------------------------------------------------- /storybook/index.ts: -------------------------------------------------------------------------------- 1 | // this is the native storybook entry point 2 | // import { StorybookUI } from "./config" 3 | 4 | export * from "./storybook" 5 | -------------------------------------------------------------------------------- /app/components/presented-by/images/bg.team.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/presented-by/images/bg.team.png -------------------------------------------------------------------------------- /app/components/schedule-cell/images/lunch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/schedule-cell/images/lunch.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Modus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Modus.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Gold_Sentry.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Gold_Sentry.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Platinum_AWS.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Platinum_AWS.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/playstation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/playstation.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/info.active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/info.active.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/map.inactive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/map.inactive.png -------------------------------------------------------------------------------- /app/components/travel-option/Lightrail@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/travel-option/Lightrail@2x.png -------------------------------------------------------------------------------- /app/components/travel-option/Lightrail@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/travel-option/Lightrail@3x.png -------------------------------------------------------------------------------- /app/screens/event-details/images/img.break.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/img.break.png -------------------------------------------------------------------------------- /app/screens/event-details/images/img.event.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/img.event.png -------------------------------------------------------------------------------- /app/components/gerding-theater/img.venue@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/gerding-theater/img.venue@2x.png -------------------------------------------------------------------------------- /app/components/gerding-theater/img.venue@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/gerding-theater/img.venue@3x.png -------------------------------------------------------------------------------- /app/components/presented-by/images/bg.team@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/presented-by/images/bg.team@2x.png -------------------------------------------------------------------------------- /app/components/presented-by/images/bg.team@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/presented-by/images/bg.team@3x.png -------------------------------------------------------------------------------- /app/components/schedule-cell/images/panelist.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/schedule-cell/images/panelist.png -------------------------------------------------------------------------------- /app/components/speaker-image/img.speaker.lg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/speaker-image/img.speaker.lg.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_G2i.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_G2i.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Airship.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Airship.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_BuilderX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_BuilderX.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Cambia.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Cambia.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Echobind.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Echobind.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Facebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Facebook.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_G2i@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_G2i@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_G2i@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_G2i@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Modus@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Modus@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Modus@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Modus@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Gold_Callstack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Gold_Callstack.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Gold_Coinbase.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Gold_Coinbase.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Gold_Sentry@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Gold_Sentry@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Gold_Sentry@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Gold_Sentry@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Platinum_AWS@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Platinum_AWS@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Platinum_AWS@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Platinum_AWS@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_Bugsnag.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_Bugsnag.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_GoDaddy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_GoDaddy.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/playstation@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/playstation@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/playstation@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/playstation@3x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/calendar.active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/calendar.active.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/info.active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/info.active@2x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/info.active@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/info.active@3x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/info.inactive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/info.inactive.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/map.active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/map.active@2x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/map.active@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/map.active@3x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/map.inactive@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/map.inactive@2x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/map.inactive@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/map.inactive@3x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/profile.active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/profile.active.png -------------------------------------------------------------------------------- /app/components/title-bar/icon.back-arrow@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/title-bar/icon.back-arrow@2x.png -------------------------------------------------------------------------------- /app/components/title-bar/icon.back-arrow@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/title-bar/icon.back-arrow@3x.png -------------------------------------------------------------------------------- /app/screens/event-details/images/img.event@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/img.event@2x.png -------------------------------------------------------------------------------- /app/screens/event-details/images/img.event@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/img.event@3x.png -------------------------------------------------------------------------------- /app/components/nearby-attractions/images/Close.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/nearby-attractions/images/Close.png -------------------------------------------------------------------------------- /app/components/speaker-image/img.speaker.lg@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/speaker-image/img.speaker.lg@2x.png -------------------------------------------------------------------------------- /app/components/speaker-image/img.speaker.lg@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/speaker-image/img.speaker.lg@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_G2i@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_G2i@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_G2i@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_G2i@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Airship@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Airship@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Airship@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Airship@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Cambia@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Cambia@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Cambia@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Cambia@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Gold_Callstack@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Gold_Callstack@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Gold_Callstack@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Gold_Callstack@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Gold_Coinbase@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Gold_Coinbase@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Gold_Coinbase@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Gold_Coinbase@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_Bugsnag@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_Bugsnag@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_Bugsnag@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_Bugsnag@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_GoDaddy@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_GoDaddy@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_GoDaddy@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_GoDaddy@3x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/calendar.inactive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/calendar.inactive.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/info.inactive@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/info.inactive@2x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/info.inactive@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/info.inactive@3x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/profile.active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/profile.active@2x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/profile.active@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/profile.active@3x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/profile.inactive.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/profile.inactive.png -------------------------------------------------------------------------------- /app/screens/event-details/images/img.partylogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/img.partylogo.png -------------------------------------------------------------------------------- /app/screens/event-details/images/sponsor-bumped.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/sponsor-bumped.png -------------------------------------------------------------------------------- /app/theme/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./spacing" 2 | export * from "./typography" 3 | export * from "./timing" 4 | export * from "./palette" 5 | export * from "./color" 6 | -------------------------------------------------------------------------------- /app/components/getting-to-chain-react/logo-lyft@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/getting-to-chain-react/logo-lyft@1x.png -------------------------------------------------------------------------------- /app/components/getting-to-chain-react/logo-lyft@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/getting-to-chain-react/logo-lyft@2x.png -------------------------------------------------------------------------------- /app/components/getting-to-chain-react/logo-lyft@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/getting-to-chain-react/logo-lyft@3x.png -------------------------------------------------------------------------------- /app/components/getting-to-chain-react/logo-uber@1x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/getting-to-chain-react/logo-uber@1x.png -------------------------------------------------------------------------------- /app/components/getting-to-chain-react/logo-uber@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/getting-to-chain-react/logo-uber@2x.png -------------------------------------------------------------------------------- /app/components/getting-to-chain-react/logo-uber@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/getting-to-chain-react/logo-uber@3x.png -------------------------------------------------------------------------------- /app/components/nearby-attractions/images/Close@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/nearby-attractions/images/Close@2x.png -------------------------------------------------------------------------------- /app/components/nearby-attractions/images/Close@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/nearby-attractions/images/Close@3x.png -------------------------------------------------------------------------------- /app/components/schedule-cell/images/afterparty-G2i.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/schedule-cell/images/afterparty-G2i.png -------------------------------------------------------------------------------- /app/components/schedule-cell/images/coffee-small.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/schedule-cell/images/coffee-small.png -------------------------------------------------------------------------------- /app/components/schedule-cell/images/registration.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/schedule-cell/images/registration.png -------------------------------------------------------------------------------- /app/components/schedule-cell/images/sponsor-bumped.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/schedule-cell/images/sponsor-bumped.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_BuilderX@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_BuilderX@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_BuilderX@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_BuilderX@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Echobind@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Echobind@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Echobind@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Echobind@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Facebook@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Facebook@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Bronze_Facebook@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Bronze_Facebook@3x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/calendar.active@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/calendar.active@2x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/calendar.active@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/calendar.active@3x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/calendar.inactive@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/calendar.inactive@2x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/calendar.inactive@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/calendar.inactive@3x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/profile.inactive@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/profile.inactive@2x.png -------------------------------------------------------------------------------- /app/components/tab-icon/icons/profile.inactive@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/tab-icon/icons/profile.inactive@3x.png -------------------------------------------------------------------------------- /app/screens/event-details/images/img.partylogo@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/img.partylogo@2x.png -------------------------------------------------------------------------------- /app/screens/event-details/images/img.partylogo@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/img.partylogo@3x.png -------------------------------------------------------------------------------- /app/components/nearby-attractions/images/star.filled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/nearby-attractions/images/star.filled.png -------------------------------------------------------------------------------- /app/components/presented-by/images/logo.infinitered.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/presented-by/images/logo.infinitered.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/link.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/link.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_bumped-alt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_bumped-alt.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Platinum_Amazon_Alexa.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Platinum_Amazon_Alexa.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_ServerlessGuru.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_ServerlessGuru.png -------------------------------------------------------------------------------- /app/screens/event-details/images/img.afterparty-g2i.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/img.afterparty-g2i.png -------------------------------------------------------------------------------- /app/components/nearby-attractions/images/star.filled@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/nearby-attractions/images/star.filled@2x.png -------------------------------------------------------------------------------- /app/components/nearby-attractions/images/star.filled@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/nearby-attractions/images/star.filled@3x.png -------------------------------------------------------------------------------- /app/components/nearby-attractions/images/star.unfilled.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/nearby-attractions/images/star.unfilled.png -------------------------------------------------------------------------------- /app/components/presented-by/images/logo.infinitered@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/presented-by/images/logo.infinitered@2x.png -------------------------------------------------------------------------------- /app/components/presented-by/images/logo.infinitered@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/presented-by/images/logo.infinitered@3x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/github.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/github.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/link@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/link@2x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/link@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/link@3x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/medium.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/medium.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/slack.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/slack.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/twitter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/twitter.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_bumped-alt@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_bumped-alt@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_bumped-alt@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_bumped-alt@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Platinum_Amazon_Alexa@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Platinum_Amazon_Alexa@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Platinum_Amazon_Alexa@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Platinum_Amazon_Alexa@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_AmazonWebService.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_AmazonWebService.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_ServerlessGuru@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_ServerlessGuru@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_ServerlessGuru@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_ServerlessGuru@3x.png -------------------------------------------------------------------------------- /app/screens/event-details/images/sponsor-bumped-thumb.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/sponsor-bumped-thumb.png -------------------------------------------------------------------------------- /test/storyshots.test.ts: -------------------------------------------------------------------------------- 1 | import initStoryshots from "@storybook/addon-storyshots" 2 | 3 | initStoryshots({ 4 | configPath: "./storybook", 5 | framework: "react-native", 6 | }) 7 | -------------------------------------------------------------------------------- /app/components/nearby-attractions/images/star.unfilled@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/nearby-attractions/images/star.unfilled@2x.png -------------------------------------------------------------------------------- /app/components/nearby-attractions/images/star.unfilled@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/nearby-attractions/images/star.unfilled@3x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/dribbble.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/dribbble.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/facebook.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/facebook.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/github@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/github@2x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/github@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/github@3x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/instagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/instagram.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/medium@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/medium@2x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/medium@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/medium@3x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/slack@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/slack@2x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/slack@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/slack@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_Playstation_Wifi.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_Playstation_Wifi.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_AmazonWebService@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_AmazonWebService@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Silver_AmazonWebService@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Silver_AmazonWebService@3x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/dribbble@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/dribbble@2x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/dribbble@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/dribbble@3x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/email.icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/email.icon.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/facebook@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/facebook@2x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/facebook@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/facebook@3x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/instagram@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/instagram@2x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/instagram@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/instagram@3x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/phone.icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/phone.icon.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/twitter@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/twitter@2x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/twitter@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/twitter@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_AWS_AA_AfterParty.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_AWS_AA_AfterParty.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_DevLifts_Streches.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_DevLifts_Streches.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_Playstation_Wifi@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_Playstation_Wifi@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_Playstation_Wifi@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_Playstation_Wifi@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_SquarespaceBadges.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_SquarespaceBadges.png -------------------------------------------------------------------------------- /app/screens/event-details/images/img.afterparty-squarespace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/screens/event-details/images/img.afterparty-squarespace.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/email.icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/email.icon@2x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/email.icon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/email.icon@3x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/phone.icon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/phone.icon@2x.png -------------------------------------------------------------------------------- /app/components/social-button/social_icon_assets/phone.icon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/social-button/social_icon_assets/phone.icon@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_AWS_AA_AfterParty@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_AWS_AA_AfterParty@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_AWS_AA_AfterParty@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_AWS_AA_AfterParty@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_DevLifts_Streches@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_DevLifts_Streches@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_DevLifts_Streches@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_DevLifts_Streches@3x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_SquarespaceBadges@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_SquarespaceBadges@2x.png -------------------------------------------------------------------------------- /app/components/sponsors/logos/Additional_SquarespaceBadges@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/infinitered/ChainReactApp2022/HEAD/app/components/sponsors/logos/Additional_SquarespaceBadges@3x.png -------------------------------------------------------------------------------- /app/models/setting/setting.test.ts: -------------------------------------------------------------------------------- 1 | import { SettingModel } from "./setting" 2 | 3 | test("can be created", () => { 4 | const instance = SettingModel.create({}) 5 | 6 | expect(instance).toBeTruthy() 7 | }) 8 | -------------------------------------------------------------------------------- /test/mock-async-storage.ts: -------------------------------------------------------------------------------- 1 | import mockAsyncStorage from "@react-native-async-storage/async-storage/jest/async-storage-mock" 2 | 3 | jest.mock("@react-native-async-storage/async-storage", () => mockAsyncStorage) 4 | -------------------------------------------------------------------------------- /app/utils/delay.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * A "modern" sleep statement. 3 | * 4 | * @param ms The number of milliseconds to wait. 5 | */ 6 | export const delay = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms)) 7 | -------------------------------------------------------------------------------- /App.js: -------------------------------------------------------------------------------- 1 | // This is the first file that ReactNative will run when it starts up. 2 | import App from "./app/app.tsx" 3 | import { registerRootComponent } from "expo" 4 | 5 | registerRootComponent(App) 6 | export default App 7 | -------------------------------------------------------------------------------- /app/models/event-store/event-store.test.ts: -------------------------------------------------------------------------------- 1 | import { EventStoreModel } from "./event-store" 2 | 3 | test("can be created", () => { 4 | const instance = EventStoreModel.create({}) 5 | 6 | expect(instance).toBeTruthy() 7 | }) 8 | -------------------------------------------------------------------------------- /app/components/icon/icons/index.ts: -------------------------------------------------------------------------------- 1 | export const icons = { 2 | back: require("./arrow-left.png"), 3 | bullet: require("./bullet.png"), 4 | bug: require("./ladybug.png"), 5 | } 6 | 7 | export type IconTypes = keyof typeof icons 8 | -------------------------------------------------------------------------------- /app/components/travel-option/travel-option.presets.ts: -------------------------------------------------------------------------------- 1 | export const presets = { 2 | rideShare: require("./Car.png"), 3 | massTransit: require("./Lightrail.png"), 4 | } 5 | 6 | export type TravelOptionPresets = keyof typeof presets 7 | -------------------------------------------------------------------------------- /eas.json: -------------------------------------------------------------------------------- 1 | { 2 | "build": { 3 | "production": {}, 4 | "development": { 5 | "developmentClient": true, 6 | "distribution": "internal" 7 | } 8 | }, 9 | "submit": { 10 | "production": {} 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /app/models/speaker/speaker.test.ts: -------------------------------------------------------------------------------- 1 | import { SpeakerModel } from "./speaker" 2 | 3 | test("can be created", () => { 4 | const instance = SpeakerModel.create({ 5 | id: "asdfd", 6 | }) 7 | 8 | expect(instance).toBeTruthy() 9 | }) 10 | -------------------------------------------------------------------------------- /app/components/travel-option/travel-option.props.ts: -------------------------------------------------------------------------------- 1 | import { TextProperties } from "react-native" 2 | import { TravelOptionPresets } from "./travel-option.presets" 3 | 4 | export interface TravelOptionProps extends TextProperties { 5 | preset?: TravelOptionPresets 6 | } 7 | -------------------------------------------------------------------------------- /ignite/templates/model/NAME.test.ts.ejs: -------------------------------------------------------------------------------- 1 | import { <%= props.pascalCaseName %>Model } from "./<%= props.kebabCaseName %>" 2 | 3 | test("can be created", () => { 4 | const instance = <%= props.pascalCaseName %>Model.create({}) 5 | 6 | expect(instance).toBeTruthy() 7 | }) 8 | -------------------------------------------------------------------------------- /app/utils/ignore-warnings.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * Ignore some yellowbox warnings. Some of these are for deprecated functions 3 | * that we haven't gotten around to replacing yet. 4 | */ 5 | import { LogBox } from "react-native" 6 | 7 | // prettier-ignore 8 | LogBox.ignoreLogs([ 9 | "Require cycle:", 10 | ]) 11 | -------------------------------------------------------------------------------- /app/i18n/translate.ts: -------------------------------------------------------------------------------- 1 | import i18n from "i18n-js" 2 | import { TxKeyPath } from "./i18n" 3 | 4 | /** 5 | * Translates text. 6 | * 7 | * @param key The i18n key. 8 | */ 9 | export function translate(key: TxKeyPath, options?: i18n.TranslateOptions) { 10 | return key ? i18n.t(key, options) : null 11 | } 12 | -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | presets: ["babel-preset-expo"], 3 | env: { 4 | production: {}, 5 | }, 6 | plugins: [ 7 | [ 8 | "@babel/plugin-proposal-decorators", 9 | { 10 | legacy: true, 11 | }, 12 | ], 13 | ["@babel/plugin-proposal-optional-catch-binding"], 14 | ], 15 | } 16 | -------------------------------------------------------------------------------- /test/setup.ts: -------------------------------------------------------------------------------- 1 | // we always make sure 'react-native' gets included first 2 | import "react-native" 3 | 4 | // libraries to mock 5 | import "./mock-react-native-image" 6 | import "./mock-async-storage" 7 | import "./mock-i18n" 8 | import "./mock-reactotron" 9 | 10 | jest.useFakeTimers() 11 | declare global { 12 | let __TEST__ 13 | } 14 | -------------------------------------------------------------------------------- /app/screens/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./welcome/welcome-screen" 2 | export * from "./error/error-boundary" 3 | // export other screens here 4 | export * from "./venue/venue-screen" 5 | export * from "./schedule/schedule-screen" 6 | export * from "./code-of-conduct/code-of-conduct-screen" 7 | export * from "./event-details/event-details-screen" 8 | export * from "./info/info-screen" 9 | -------------------------------------------------------------------------------- /app/components/social-button/social-button.props.ts: -------------------------------------------------------------------------------- 1 | import { TouchableOpacityProperties } from "react-native" 2 | import { SocialButtonPresetNames } from "./social-button.presets" 3 | 4 | export interface SocialButtonProps extends TouchableOpacityProperties { 5 | /** 6 | * One of the different types of text presets. 7 | */ 8 | preset?: SocialButtonPresetNames 9 | link: string 10 | } 11 | -------------------------------------------------------------------------------- /app/models/index.ts: -------------------------------------------------------------------------------- 1 | export * from "./extensions/with-environment" 2 | export * from "./extensions/with-root-store" 3 | export * from "./root-store/root-store" 4 | export * from "./root-store/root-store-context" 5 | export * from "./root-store/setup-root-store" 6 | export * from "./event-store/event-store" 7 | export * from "./event/event" 8 | export * from "./setting/setting" 9 | export * from "./speaker/speaker" 10 | -------------------------------------------------------------------------------- /storybook/views/story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { ScrollView, View, ViewStyle } from "react-native" 3 | 4 | export interface StoryProps { 5 | children?: React.ReactNode 6 | } 7 | 8 | const ROOT: ViewStyle = { flex: 1 } 9 | 10 | export function Story(props: StoryProps) { 11 | return ( 12 | 13 | {props.children} 14 | 15 | ) 16 | } 17 | -------------------------------------------------------------------------------- /app/components/schedule-cell/schedule-cell.props.ts: -------------------------------------------------------------------------------- 1 | import { ViewProps } from "react-native" 2 | import { Event } from "../../models" 3 | import { ScheduleCellPresetNames } from "./schedule-cell.presets" 4 | 5 | export interface ScheduleCellProps extends ViewProps { 6 | // Index to determine if cell is even or odd 7 | index: number 8 | event: Event 9 | preset?: ScheduleCellPresetNames 10 | onPress: (event: Event) => void 11 | noTime?: boolean 12 | } 13 | -------------------------------------------------------------------------------- /app/theme/fonts/index.ts: -------------------------------------------------------------------------------- 1 | // import * as Font from "expo-font" 2 | 3 | export const initFonts = async () => { 4 | // Refer to ./assets/fonts/custom-fonts.md for instructions. 5 | // ... 6 | // Welcome back! Just uncomment this and replace/append with your font file names! 7 | // ⬇ 8 | // await Font.loadAsync({ 9 | // Montserrat: require("./Montserrat-Regular.ttf"), 10 | // "Montserrat-Regular": require("./Montserrat-Regular.ttf"), 11 | // }) 12 | } 13 | -------------------------------------------------------------------------------- /app/components/form-row/form-row.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { View } from "react-native" 3 | import { PRESETS } from "./form-row.presets" 4 | import { FormRowProps } from "./form-row.props" 5 | 6 | /** 7 | * A horizontal container component used to hold a row of a form. 8 | */ 9 | export function FormRow(props: FormRowProps) { 10 | const viewStyle = [PRESETS[props.preset], props.style] 11 | 12 | return {props.children} 13 | } 14 | -------------------------------------------------------------------------------- /app/screens/event-details/image-dimension-helpers.ts: -------------------------------------------------------------------------------- 1 | import { spacing } from "../../theme" 2 | const IMAGE_ASPECT_RATIO = 1.5 3 | 4 | export const calculateImageDimensions = (screenWidth) => { 5 | const imageWidth = 0.92 * (screenWidth - 2 * spacing.large) // 92% of the available container, screen width minus twice the screen padding. 6 | const imageHeight = imageWidth / IMAGE_ASPECT_RATIO 7 | return { 8 | height: imageHeight, 9 | width: imageWidth, 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /e2e/init.js: -------------------------------------------------------------------------------- 1 | const detox = require("detox") 2 | const config = require("../package.json").detox 3 | const adapter = require("detox/runners/jest/adapter") 4 | 5 | jest.setTimeout(120000) 6 | jasmine.getEnv().addReporter(adapter) 7 | 8 | beforeAll(async () => { 9 | await detox.init(config) 10 | }) 11 | 12 | beforeEach(async () => { 13 | await adapter.beforeEach() 14 | }) 15 | 16 | afterAll(async () => { 17 | await adapter.afterAll() 18 | await detox.cleanup() 19 | }) 20 | -------------------------------------------------------------------------------- /app/components/icon/icon.props.ts: -------------------------------------------------------------------------------- 1 | import { ImageStyle, StyleProp, ViewStyle } from "react-native" 2 | import { IconTypes } from "./icons" 3 | 4 | export interface IconProps { 5 | /** 6 | * Style overrides for the icon image 7 | */ 8 | style?: StyleProp 9 | 10 | /** 11 | * Style overrides for the icon container 12 | */ 13 | 14 | containerStyle?: StyleProp 15 | 16 | /** 17 | * The name of the icon 18 | */ 19 | 20 | icon?: IconTypes 21 | } 22 | -------------------------------------------------------------------------------- /app/models/extensions/with-environment.ts: -------------------------------------------------------------------------------- 1 | import { getEnv, IStateTreeNode } from "mobx-state-tree" 2 | import { Environment } from "../environment" 3 | 4 | /** 5 | * Adds a environment property to the node for accessing our 6 | * Environment in strongly typed. 7 | */ 8 | export const withEnvironment = (self: IStateTreeNode) => ({ 9 | views: { 10 | /** 11 | * The environment. 12 | */ 13 | get environment() { 14 | return getEnv(self) 15 | }, 16 | }, 17 | }) 18 | -------------------------------------------------------------------------------- /app/components/gradient-background/gradient-background.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { ViewStyle } from "react-native" 3 | import { LinearGradient } from "expo-linear-gradient" 4 | 5 | const BG_GRADIENT: ViewStyle = { position: "absolute", left: 0, right: 0, top: 0, bottom: 0 } 6 | 7 | export interface GradientBackgroundProps { 8 | colors: string[] 9 | } 10 | 11 | export function GradientBackground(props: GradientBackgroundProps) { 12 | return 13 | } 14 | -------------------------------------------------------------------------------- /app/components/tab-icon/tab-icon.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { TabIcon } from "./tab-icon" 5 | 6 | storiesOf("TabIcon", module) 7 | .addDecorator((fn) => {fn()}) 8 | .add("Style Presets", () => ( 9 | 10 | 11 | 12 | 13 | 14 | )) 15 | -------------------------------------------------------------------------------- /app/models/extensions/with-root-store.ts: -------------------------------------------------------------------------------- 1 | import { getRoot, IStateTreeNode } from "mobx-state-tree" 2 | import { RootStore } from "../root-store/root-store" 3 | 4 | /** 5 | * Adds a rootStore property to the node for a convenient 6 | * and strongly typed way for stores to access other stores. 7 | */ 8 | export const withRootStore = (self: IStateTreeNode) => ({ 9 | views: { 10 | /** 11 | * The root store. 12 | */ 13 | get rootStore(): RootStore { 14 | return getRoot(self) 15 | }, 16 | }, 17 | }) 18 | -------------------------------------------------------------------------------- /app/components/title-bar/title-bar.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { TitleBar } from "./title-bar" 5 | 6 | storiesOf("TitleBar", module) 7 | .addDecorator((fn) => {fn()}) 8 | .add("Style Presets", () => ( 9 | 10 | 11 | 12 | 13 | 14 | )) 15 | -------------------------------------------------------------------------------- /app/components/presented-by/presented-by.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { Story, StoryScreen, UseCase } from "../../../storybook/views" 4 | import { PresentedBy } from "./presented-by" 5 | 6 | storiesOf("PresentedBy", module) 7 | .addDecorator((fn) => {fn()}) 8 | .add("Presets", () => ( 9 | 10 | 11 | 12 | 13 | 14 | )) 15 | -------------------------------------------------------------------------------- /app/theme/spacing.ts: -------------------------------------------------------------------------------- 1 | import { Dimensions } from "react-native" 2 | 3 | export const spacing = { 4 | tiny: 4, 5 | small: 10, 6 | medium: 14, 7 | large: 20, 8 | extraLarge: 43, 9 | huge: 80, 10 | ginormous: 100, 11 | } 12 | 13 | export const textSizes = { 14 | title: 24, 15 | } 16 | 17 | export const getScreenWidth = () => Dimensions.get("window").width 18 | export const getScreenHeight = () => Dimensions.get("window").height 19 | 20 | export const HIT_SLOP = { 21 | top: 20, 22 | left: 20, 23 | right: 20, 24 | bottom: 20, 25 | } 26 | -------------------------------------------------------------------------------- /app/components/back-button/back-button.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { BackButton } from "./back-button" 5 | 6 | storiesOf("BackButton", module) 7 | .addDecorator((fn) => {fn()}) 8 | .add("Style Presets", () => ( 9 | 10 | 11 | 12 | 13 | 14 | )) 15 | -------------------------------------------------------------------------------- /app/components/gerding-theater/gerding-theater.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { GerdingTheater } from "./gerding-theater" 5 | 6 | storiesOf("GerdingTheater", module) 7 | .addDecorator((fn) => {fn()}) 8 | .add("Style Presets", () => ( 9 | 10 | 11 | 12 | 13 | 14 | )) 15 | -------------------------------------------------------------------------------- /app/components/footer/footer.props.ts: -------------------------------------------------------------------------------- 1 | import { ViewProperties, ViewStyle } from "react-native" 2 | import { FooterPresetNames } from "./footer.presets" 3 | 4 | export interface FooterProps extends ViewProperties { 5 | /** 6 | * The children to display if not using `tx` or nested components. 7 | */ 8 | children?: object 9 | 10 | /** 11 | * An optional style override useful for padding & margin. 12 | */ 13 | style?: ViewStyle 14 | 15 | /** 16 | * One of the different types of text presets. 17 | */ 18 | preset?: FooterPresetNames 19 | } 20 | -------------------------------------------------------------------------------- /app/components/wallpaper/wallpaper.props.ts: -------------------------------------------------------------------------------- 1 | import { ImageStyle, StyleProp } from "react-native" 2 | import { WallpaperPresets } from "./wallpaper.presets" 3 | 4 | export interface WallpaperProps { 5 | /** 6 | * An optional style override useful for padding & margin. 7 | */ 8 | style?: StyleProp 9 | 10 | /** 11 | * An optional background image to override the default image. 12 | */ 13 | backgroundImage?: string 14 | 15 | /** 16 | * One of the different types of wallpaper presets. 17 | */ 18 | preset?: WallpaperPresets 19 | } 20 | -------------------------------------------------------------------------------- /app/components/contact/contact.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { Story, StoryScreen, UseCase } from "../../../storybook/views" 4 | import { Contact } from "./contact" 5 | 6 | storiesOf("Code of Conduct - Contact", module) 7 | .addDecorator((fn) => {fn()}) 8 | .add("Presets", () => ( 9 | 10 | 11 | 12 | 13 | 14 | )) 15 | -------------------------------------------------------------------------------- /storybook/views/story-screen.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { ViewStyle, KeyboardAvoidingView, Platform } from "react-native" 3 | 4 | const ROOT: ViewStyle = { backgroundColor: "#f0f0f0", flex: 1 } 5 | 6 | export interface StoryScreenProps { 7 | children?: React.ReactNode 8 | } 9 | 10 | const behavior = Platform.OS === "ios" ? "padding" : undefined 11 | export const StoryScreen = (props: StoryScreenProps) => ( 12 | 13 | {props.children} 14 | 15 | ) 16 | -------------------------------------------------------------------------------- /app/components/nearby-attractions/nearby-attractions.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { Story, StoryScreen, UseCase } from "../../../storybook/views" 4 | import { NearbyAttractions } from "./nearby-attractions" 5 | 6 | storiesOf("NearbyAttractions", module) 7 | .addDecorator((fn) => {fn()}) 8 | .add("Style Presets", () => ( 9 | 10 | 11 | 12 | 13 | 14 | )) 15 | -------------------------------------------------------------------------------- /app/components/schedule-nav/schedule-nav.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { ScheduleNav } from "./schedule-nav" 5 | 6 | storiesOf("ScheduleNav", module) 7 | .addDecorator((fn) => {fn()}) 8 | .add("Style Presets", () => ( 9 | 10 | 11 | {}} /> 12 | 13 | 14 | )) 15 | -------------------------------------------------------------------------------- /app/components/survey-link/survey-link.tsx: -------------------------------------------------------------------------------- 1 | import * as React from "react" 2 | import { Linking } from "react-native" 3 | import { ContentLink } from "../content-link/content-link" 4 | 5 | export function SurveyLink() { 6 | const onPressLink = () => { 7 | Linking.openURL("https://www.surveymonkey.com/r/ChainReact2019") 8 | } 9 | 10 | return ( 11 | 17 | ) 18 | } 19 | -------------------------------------------------------------------------------- /app/components/wallpaper/wallpaper.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { Wallpaper } from "./wallpaper" 5 | 6 | declare let module 7 | 8 | storiesOf("Wallpaper", module) 9 | .addDecorator((fn) => {fn()}) 10 | .add("Style Presets", () => ( 11 | 12 | 13 | 14 | 15 | 16 | )) 17 | -------------------------------------------------------------------------------- /app/components/wi-fi/wi-fi.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { color } from "../../theme" 5 | import { WiFi } from "./wi-fi" 6 | 7 | storiesOf("WiFi", module) 8 | .addDecorator((fn) => {fn()}) 9 | .add("Style Presets", () => ( 10 | 11 | 12 | 13 | 14 | 15 | )) 16 | -------------------------------------------------------------------------------- /.expo-shared/README.md: -------------------------------------------------------------------------------- 1 | > Why do I have a folder named ".expo-shared" in my project? 2 | 3 | The ".expo-shared" folder is created when running commands that produce state that is intended to be shared with all developers on the project. For example, "npx expo-optimize". 4 | 5 | > What does the "assets.json" file contain? 6 | 7 | The "assets.json" file describes the assets that have been optimized through "expo-optimize" and do not need to be processed again. 8 | 9 | > Should I commit the ".expo-shared" folder? 10 | 11 | Yes, you should share the ".expo-shared" folder with your collaborators. 12 | -------------------------------------------------------------------------------- /app/components/conduct/conduct.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { color } from "../../theme" 5 | import { Conduct } from "./conduct" 6 | 7 | storiesOf("Conduct", module) 8 | .addDecorator((fn) => {fn()}) 9 | .add("Style Presets", () => ( 10 | 11 | 12 | 13 | 14 | 15 | )) 16 | -------------------------------------------------------------------------------- /app/components/form-row/form-row.props.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { StyleProp, ViewStyle } from "react-native" 3 | import { FormRowPresets } from "./form-row.presets" 4 | 5 | /** 6 | * The properties you can pass to FormRow. 7 | */ 8 | export interface FormRowProps { 9 | /** 10 | * Children components. 11 | */ 12 | children?: React.ReactNode 13 | 14 | /** 15 | * Override the container style... useful for margins and padding. 16 | */ 17 | style?: StyleProp 18 | 19 | /** 20 | * The type of border. 21 | */ 22 | preset: FormRowPresets 23 | } 24 | -------------------------------------------------------------------------------- /app/components/getting-to-chain-react/getting-to-chain-react.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { GettingToChainReact } from "./getting-to-chain-react" 5 | 6 | storiesOf("GettingToChainReact", module) 7 | .addDecorator((fn) => {fn()}) 8 | .add("Style Presets", () => ( 9 | 10 | 11 | 12 | 13 | 14 | )) 15 | -------------------------------------------------------------------------------- /app/components/icon/icon.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { View, ImageStyle } from "react-native" 3 | import { AutoImage as Image } from "../auto-image/auto-image" 4 | import { IconProps } from "./icon.props" 5 | import { icons } from "./icons" 6 | 7 | const ROOT: ImageStyle = { 8 | resizeMode: "contain", 9 | } 10 | 11 | export function Icon(props: IconProps) { 12 | const { style: styleOverride, icon, containerStyle } = props 13 | 14 | return ( 15 | 16 | 17 | 18 | ) 19 | } 20 | -------------------------------------------------------------------------------- /app/components/sponsors/sponsors.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { color } from "../../theme" 5 | import { Sponsors } from "./sponsors" 6 | 7 | storiesOf("Sponsors", module) 8 | .addDecorator((fn) => {fn()}) 9 | .add("Style Presets", () => ( 10 | 11 | 12 | 13 | 14 | 15 | )) 16 | -------------------------------------------------------------------------------- /app/components/survey-link/survey-link.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { color } from "../../theme" 5 | import { SurveyLink } from "./survey-link" 6 | 7 | storiesOf("SurveyLink", module) 8 | .addDecorator((fn) => {fn()}) 9 | .add("Style Presets", () => ( 10 | 11 | 12 | 13 | 14 | 15 | )) 16 | -------------------------------------------------------------------------------- /app/theme/palette.ts: -------------------------------------------------------------------------------- 1 | export const palette = { 2 | orange:'#FF8000', 3 | black: "#1d1d1d", 4 | white: "#ffffff", 5 | offWhite: "#C7C4DB", 6 | crimson: "#EC174F", 7 | ebony: "#10102A", 8 | portGore: "#161637", 9 | portGoreLight: "#1B1840", 10 | portGoreLighter: "#201B48", 11 | waterloo: "#878794", 12 | martinique: "#2C2C4C", 13 | mantiniqueLight: "#36325a", 14 | shamrock: "#56E39F", 15 | vintageRock: "rgba(86,227,159,0.20)", 16 | lightGrey: "#E6EAF4", 17 | lighterGrey: "#CDD4DA", 18 | haiti: "#0F0F30", 19 | angry: "#dd3333", 20 | purple: "#6600FF", 21 | darkPurple: "#0F0F30", 22 | } 23 | -------------------------------------------------------------------------------- /app/components/travel-option/travel-option.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { color } from "../../theme" 5 | import { TravelOption } from "./travel-option" 6 | 7 | storiesOf("TravelOption", module) 8 | .addDecorator((fn) => {fn()}) 9 | .add("Style Presets", () => ( 10 | 11 | 12 | 13 | 14 | 15 | )) 16 | -------------------------------------------------------------------------------- /.solidarity: -------------------------------------------------------------------------------- 1 | { 2 | "$schema": "http://json.schemastore.org/solidaritySchema", 3 | "requirements": { 4 | "Node": [{ "rule": "cli", "binary": "node", "semver": ">=8.6.0" }], 5 | "Xcode": [ 6 | { 7 | "rule": "cli", 8 | "binary": "xcodebuild", 9 | "version": "-version", 10 | "semver": ">=9.2.0", 11 | "platform": "darwin" 12 | } 13 | ], 14 | "CocoaPods": [ 15 | { 16 | "rule": "cli", 17 | "binary": "pod", 18 | "version": "--version", 19 | "semver": ">=1.7.0", 20 | "platform": "darwin" 21 | } 22 | ] 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /app/services/api/api.types.ts: -------------------------------------------------------------------------------- 1 | import { GeneralApiProblem } from "./api-problem" 2 | // import { Character } from "../../models/character/character" 3 | 4 | export interface User { 5 | id: number 6 | name: string 7 | } 8 | 9 | export type GetUsersResult = { kind: "ok"; users: User[] } | GeneralApiProblem 10 | export type GetUserResult = { kind: "ok"; user: User } | GeneralApiProblem 11 | 12 | export type GetCharactersResult = 13 | | { kind: "ok"; characters: /* Character */ unknown[] } 14 | | GeneralApiProblem 15 | export type GetCharacterResult = 16 | | { kind: "ok"; character: /* Character */ unknown } 17 | | GeneralApiProblem 18 | -------------------------------------------------------------------------------- /e2e/firstTest.spec.js: -------------------------------------------------------------------------------- 1 | // For more info on how to write Detox tests, see the official docs: 2 | // https://github.com/wix/Detox/blob/master/docs/README.md 3 | 4 | const { reloadApp } = require("./reload") 5 | 6 | describe("Example", () => { 7 | beforeEach(async () => { 8 | await reloadApp() 9 | }) 10 | 11 | it("should have welcome screen", async () => { 12 | await expect(element(by.id("WelcomeScreen"))).toBeVisible() 13 | }) 14 | 15 | it("should go to next screen after tap", async () => { 16 | await element(by.id("next-screen-button")).tap() 17 | await expect(element(by.id("DemoScreen"))).toBeVisible() 18 | }) 19 | }) 20 | -------------------------------------------------------------------------------- /storybook/storybook-registry.ts: -------------------------------------------------------------------------------- 1 | require("../app/components/text/text.story") 2 | require("../app/components/auto-image/auto-image.story") 3 | require("../app/components/button/button.story") 4 | require("../app/components/form-row/form-row.story") 5 | require("../app/components/switch/switch.story") 6 | require("../app/components/text-field/text-field.story") 7 | require("../app/components/checkbox/checkbox.story") 8 | require("../app/components/wallpaper/wallpaper.story") 9 | require("../app/components/gradient-background/gradient-background.story") 10 | require("../app/components/icon/icon.story") 11 | require("../app/components/header/header.story") 12 | -------------------------------------------------------------------------------- /ignite/templates/navigator/NAME-navigator.tsx.ejs: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { createStackNavigator } from "@react-navigation/stack" 3 | import { 4 | DemoScreen 5 | } from "../../screens" 6 | 7 | export type <%= props.pascalCaseName %>ParamList = { 8 | demo: undefined 9 | } 10 | 11 | const Stack = createStackNavigator<<%= props.pascalCaseName %>ParamList>() 12 | export const <%= props.pascalCaseName %> = () => { 13 | return ( 14 | 15 | 16 | 17 | ) 18 | } 19 | -------------------------------------------------------------------------------- /app/components/icon/icon.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { Icon } from "./icon" 5 | 6 | declare let module 7 | 8 | storiesOf("Icon", module) 9 | .addDecorator((fn) => {fn()}) 10 | .add("Names", () => ( 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | )) 20 | -------------------------------------------------------------------------------- /app/components/gradient-background/gradient-background.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { GradientBackground } from "./gradient-background" 5 | 6 | declare let module 7 | 8 | storiesOf("GradientBackground", module) 9 | .addDecorator((fn) => {fn()}) 10 | .add("Style Presets", () => ( 11 | 12 | 13 | 14 | 15 | 16 | )) 17 | -------------------------------------------------------------------------------- /ignite/templates/component/NAME.story.tsx.ejs: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { StoryScreen, Story, UseCase } from "../../../storybook/views" 4 | import { color } from "../../theme" 5 | import { <%= props.pascalCaseName %> } from "./<%= props.kebabCaseName %>" 6 | 7 | storiesOf("<%= props.pascalCaseName %>", module) 8 | .addDecorator((fn) => {fn()}) 9 | .add("Style Presets", () => ( 10 | 11 | 12 | <<%= props.pascalCaseName %> style={{ backgroundColor: color.error }} /> 13 | 14 | 15 | )) 16 | -------------------------------------------------------------------------------- /app/screens/event-details/render-workshop.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { View, ViewStyle } from "react-native" 3 | import { SpeakerBio, SpeakerImage, TalkTitle } from "../../components" 4 | import { Event } from "../../models" 5 | 6 | const FULL_SIZE: ViewStyle = { 7 | width: "100%", 8 | height: "100%", 9 | } 10 | 11 | type RenderWorkshopProps = { event: Event } 12 | 13 | export function RenderWorkshop({ event }: RenderWorkshopProps) { 14 | return ( 15 | 16 | 17 | 18 | 19 | 20 | ) 21 | } 22 | -------------------------------------------------------------------------------- /app/components/nearby-attractions/nearby-attractions.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { View, ViewStyle } from "react-native" 3 | import { getScreenWidth, palette, spacing } from "../../theme" 4 | import { AttractionsList } from "./attractions-list" 5 | import { AttractionsMap } from "./attractions-map" 6 | 7 | const ROOT: ViewStyle = { 8 | paddingTop: spacing.large, 9 | backgroundColor: palette.portGoreLight, 10 | } 11 | 12 | export const NearbyAttractions = () => { 13 | const fullWidth = { 14 | width: getScreenWidth(), 15 | } 16 | return ( 17 | 18 | 19 | 20 | 21 | ) 22 | } 23 | -------------------------------------------------------------------------------- /app/services/api/api-config.ts: -------------------------------------------------------------------------------- 1 | // Use this import if you want to use "env.js" file 2 | // const { API_URL } = require("../../config/env") 3 | // Or just specify it directly like this: 4 | const API_URL = "http://example.com" 5 | 6 | /** 7 | * The options used to configure the API. 8 | */ 9 | export interface ApiConfig { 10 | /** 11 | * The URL of the api. 12 | */ 13 | url: string 14 | 15 | /** 16 | * Milliseconds before we timeout the request. 17 | */ 18 | timeout: number 19 | } 20 | 21 | /** 22 | * The default configuration for the app. 23 | */ 24 | export const DEFAULT_API_CONFIG: ApiConfig = { 25 | url: API_URL || "https://jsonplaceholder.typicode.com", 26 | timeout: 10000, 27 | } 28 | -------------------------------------------------------------------------------- /app/components/footer/footer.story.tsx: -------------------------------------------------------------------------------- 1 | import React from "react" 2 | import { storiesOf } from "@storybook/react-native" 3 | import { Story, StoryScreen, UseCase } from "../../../storybook/views" 4 | import { Footer } from "./footer" 5 | import { Text } from "../text/text" 6 | 7 | storiesOf("Footer", module) 8 | .addDecorator((fn) => {fn()}) 9 | .add("Presets", () => ( 10 | 11 | 12 |