Skip to content

Instantly share code, notes, and snippets.

View ndelitski's full-sized avatar

Nick Delitski ndelitski

  • Lisbon, Portugal
  • 17:09 (UTC -12:00)
View GitHub Profile
/* eslint-disable global-require */
import path from 'path'
import Server from '@frankmoney/webapp/es/server/Server'
import config from '../../config'
import initRoutes from './router'
const isProd = process.env.NODE_ENV === 'production'
const findUser = ({ graphqlClient }) =>
graphqlClient(`{
me {
/* eslint-disable global-require */
import express from 'express'
import compression from 'compression'
import favicon from 'serve-favicon'
import bodyParser from 'body-parser'
import cookieParser from 'cookie-parser'
import helmet from 'helmet'
import csrf from 'csurf'
import apiProxyMiddleware from './middlewares/apiProxyMiddleware'
import authenticate from './middlewares/authenticate'
import { matchRoutes } from 'react-router-config'
import { flatMap, values } from 'lodash'
import { createMemoryHistory } from 'history'
import { wrapRootEpic } from 'react-redux-epic'
import createStore from 'app/createStore'
import { featureTypes } from 'client/checkFeature'
import renderHtmlPage from './renderHtml'
import { normalizeAssets, orderAssets, normalizeStore } from './utils'
import renderRoute from './renderRoute'
import React from 'react'
import { renderToString } from 'react-redux-epic'
import { JssProvider, SheetsRegistry } from 'react-jss'
import { Provider as StoreProvider } from 'react-redux'
import Helmet from 'react-helmet'
import { GridSystemProvider } from '@frankmoney/grid'
import StaticReduxRouter from 'app/components/routing/StaticReduxRouter'
import GraphqlProvider from 'app/components/GraphqlProvider'
import ThemeProvider from 'app/components/ThemeProvider'
import HttpClientProvider from 'app/components/HttpClientProvider'
const LogRecordList = records =>
<div>
{records.map((record, idx) => renderRecord(record, idx, records))}
</div>
// utils
const lensEq = R.curryN(3, (lens, val, data) =>
R.pipe(R.view(lens), R.equals(val))(data)
)
const lensNotEq = R.complement(lensEq)
const createCase = (inProps, outProps) => () => {
const initialProps = merge({
hasFoundationRole: false,
status: SECTION_STATUS.needClarification,
finished: true,
permissions: [
SECTION_PERMISSION.readStatus,
SECTION_PERMISSION.sendClarification,
],
}, inProps)
@ndelitski
ndelitski / imp.js
Created November 25, 2017 11:41
fp vs imperative
const mapSectionStatus = ({ section: { status, finished } }) => {
let statusLabel
let statusAppearance
if (status === SECTION_STATUS.needReview && finished) {
statusLabel = 'Edited'
}
if (status === SECTION_STATUS.needClarification && finished) {
statusLabel = 'Marked as resolved'
}
const formErrors = {
budget: {
amount: 'Required',
},
project: {
name: 'Required',
},
empty: null,
}
import React from 'react'
import { mount } from 'enzyme'
import { createStore } from 'redux'
import { Provider as StoreProvider, connect } from 'react-redux'
test('render form text field', () => {
const changeTitle = title => ({
type: 'CHANGE_TITLE',
payload: { title },
})
import React from 'react'
import { compose, branch, renderComponent } from 'recompose'
import {
Breadcrumbs,
BreadcrumbsItemLink,
BreadcrumbsItem,
} from 'components/common/Breadcrumbs'
import { connect } from 'react-redux'
import createRouteUrl from 'utils/createRouteUrl'
import { userRoleSelector, isLoggedInSelector } from 'flux/selectors/auth'