Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
cbbd598
Upgrade to babel 7.0.0-rc.3, lift configuration to root directory, si…
hedgepigdaniel Aug 26, 2018
ba81b7f
Fork babel-loader and merge/fix a few things, including supporting Ba…
hedgepigdaniel Aug 26, 2018
ecb4a86
Add babel 7 bridge to make jest work
hedgepigdaniel Aug 26, 2018
457d4f1
Prettify, ignore .snyk and lerna-debug.log
hedgepigdaniel Aug 27, 2018
498fad4
Add exception for DoS vulnerability in dependency of babel-watch
hedgepigdaniel Aug 27, 2018
172db32
Move integration tests into their own package
hedgepigdaniel Aug 27, 2018
1248542
Fix prettier in integration-tests
hedgepigdaniel Aug 27, 2018
584260f
Fix imports in tests to refer to the @respond-framework/rudy package
hedgepigdaniel Aug 27, 2018
ed35b25
Integration tests: run eslint --fix to reorder imports
hedgepigdaniel Aug 27, 2018
27f953c
Integration tests: add explicit dependencies on packages needed in tests
hedgepigdaniel Aug 27, 2018
1de07e5
Integration tests: downgrade to redux 3.x since the tests fail on 4.x
hedgepigdaniel Aug 27, 2018
12e54a2
Create node_modules in sub packages so that snyk works in case all de…
hedgepigdaniel Aug 27, 2018
cb58b16
Move <Link /> into its own package
hedgepigdaniel Aug 27, 2018
7a61465
Fix imports and dependencies between rudy and link
hedgepigdaniel Aug 27, 2018
a09ccc1
Add module main field for link
hedgepigdaniel Aug 27, 2018
844cbfc
Fix boilerplate to depend on the link package
hedgepigdaniel Aug 27, 2018
82f58a4
Ignore eslint failures in link package
hedgepigdaniel Aug 27, 2018
03abdd9
Remove old eslint config
hedgepigdaniel Aug 27, 2018
e61b5f5
Prettify
hedgepigdaniel Aug 27, 2018
7405552
Link: let snyk crash without node_modules
hedgepigdaniel Aug 27, 2018
b9835af
Fix order of arguments in handlePress (<Link /> now dispatches action…
hedgepigdaniel Sep 3, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@ packages/*/
.editorconfig
.eslintignore
.gitignore
.snyk

LICENSE
yarn.lock
yarn-error.log
lerna-debug.log

*.png
3 changes: 3 additions & 0 deletions .snyk
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,7 @@ ignore:
'npm:underscore.string:20170908':
- underscore.string:
reason: DoS attack in a devDependency
'npm:braces:20180219':
- babel-watch > chokidar > anymatch > micromatch > braces:
reason: Dos in a dev dependency
patch: {}
12 changes: 12 additions & 0 deletions babel.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
module.exports = {
presets: ['@babel/env', '@babel/react', '@babel/flow'],
plugins: [
'@babel/proposal-object-rest-spread',
'@babel/proposal-class-properties',
],
env: {
es: {
presets: [['@babel/env', { modules: false }]],
},
},
}
29 changes: 16 additions & 13 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,17 +24,19 @@
"check": "yarn run is-pretty && yarn run lint && yarn run test -- -- -w 1 && yarn run build && yarn run vulnerabilities"
},
"devDependencies": {
"babel-cli": "^6.24.0",
"babel-core": "^6.24.0",
"babel-eslint": "^8.2.6",
"babel-loader": "^7.1.1",
"babel-plugin-syntax-object-rest-spread": "^6.13.0",
"babel-plugin-transform-class-properties": "^6.24.1",
"babel-plugin-transform-flow-strip-types": "^6.22.0",
"babel-preset-env": "^1.7.0",
"babel-preset-flow": "^6.23.0",
"babel-preset-react": "^6.24.1",
"babel-watch": "^2.0.6",
"@babel/cli": "^7.0.0-rc.3",
"@babel/core": "^7.0.0-rc.3",
"@babel/plugin-proposal-class-properties": "^7.0.0-rc.3",
"@babel/plugin-proposal-object-rest-spread": "^7.0.0-rc.3",
"@babel/plugin-syntax-dynamic-import": "^7.0.0-rc.3",
"@babel/preset-env": "^7.0.0-rc.3",
"@babel/preset-flow": "^7.0.0-rc.3",
"@babel/preset-react": "^7.0.0-rc.3",
"babel-core": "^7.0.0-bridge.0",
"babel-eslint": "^9.0.0-beta.3",
"babel-jest": "^23.4.2",
"babel-loader": "^8.0.0-beta.6",
"babel-watch": "git://github.com/hedgepigdaniel/babel-watch.git",
"commitizen": "^2.9.6",
"cross-env": "^5.0.1",
"css-loader": "^1.0.0",
Expand All @@ -52,12 +54,13 @@
"flow-bin": "^0.78.0",
"flow-copy-source": "^2.0.2",
"husky": "^0.14.3",
"jest": "^23.4.2",
"jest-cli": "^23.4.2",
"jest": "^23.5.0",
"jest-cli": "^23.5.0",
"jest-localstorage-mock": "^2.2.0",
"lerna": "^3.1.1",
"lint-staged": "^7.2.0",
"prettier": "^1.14.2",
"prop-types": "^15.6.2",
"react": "^16.1.1",
"react-redux": "^5.0.6",
"react-test-renderer": "^16.1.1",
Expand Down
8 changes: 0 additions & 8 deletions packages/boilerplate/.babelrc

This file was deleted.

3 changes: 3 additions & 0 deletions packages/boilerplate/babel.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
module.exports = {
extends: '../../babel.config',
}
6 changes: 3 additions & 3 deletions packages/boilerplate/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,12 @@
"prettify": "prettier --ignore-path=.eslintignore '**/*' --write",
"eslint": "eslint",
"lint": "eslint .",
"vulnerabilities": "snyk test"
"vulnerabilities": "mkdir node_modules; snyk test"
},
"dependencies": {
"@babel/polyfill": "^7.0.0-rc.3",
"@respond-framework/link": "^0.1.0",
"@respond-framework/rudy": "^0.1.0",
"babel-plugin-syntax-dynamic-import": "^6.18.0",
"babel-polyfill": "^6.23.0",
"express": "^4.15.2",
"react": "^16.1.1",
"react-dom": "^16.1.1",
Expand Down
2 changes: 1 addition & 1 deletion packages/boilerplate/server/serveDev.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
/* eslint-disable import/no-extraneous-dependencies */

import 'source-map-support/register'
import 'babel-polyfill'
import '@babel/polyfill'
import path from 'path'
import express from 'express'
import favicon from 'serve-favicon'
Expand Down
2 changes: 1 addition & 1 deletion packages/boilerplate/server/serveProd.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import 'source-map-support/register'
import 'babel-polyfill'
import '@babel/polyfill'
import { resolve } from 'path'
import express from 'express'
import favicon from 'serve-favicon'
Expand Down
11 changes: 2 additions & 9 deletions packages/boilerplate/server/webpack.config.babel.js
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ export default (env) => {
isClient &&
isDev &&
'webpack-hot-middleware/client?path=/__webpack_hmr&timeout=20000&reload=false&quiet=false&noInfo=false',
isClient && 'babel-polyfill',
isClient && '@babel/polyfill',
res(isServer ? '../src/render.server.js' : '../src/render.browser.js'),
].filter(Boolean),
},
Expand All @@ -45,18 +45,11 @@ export default (env) => {
use: {
loader: 'babel-loader',
options: {
// { modules: false } allows tree shaking, HMR, and import errors/warnings to work correctly
// Sadly, node doesn't support ES imports/exports yet, so it can't go in .babelrc
babelrc: false,
cacheDirectory: true,
presets: [['env', { modules: false }], 'react'],
plugins: [
'react-hot-loader/babel',
'syntax-dynamic-import',
'@babel/syntax-dynamic-import',
'universal-import',
'transform-flow-strip-types',
'syntax-object-rest-spread',
'transform-class-properties',
],
},
},
Expand Down
2 changes: 1 addition & 1 deletion packages/boilerplate/src/components/Sidebar.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React from 'react'
import { connect } from 'react-redux'
import { NavLink, Link } from '@respond-framework/rudy'
import { NavLink, Link } from '@respond-framework/link'
import styles from '../css/Sidebar'

// TODO: Use the link package
Expand Down
6 changes: 6 additions & 0 deletions packages/integration-tests/.eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
node_modules/
yarn-error.log

*.snap

.eslintignore
11 changes: 11 additions & 0 deletions packages/integration-tests/.eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
const path = require('path')

function res() {
const segments = Array.from(arguments)
segments.unshift(__dirname)
return path.join.apply(undefined, segments)
}

module.exports = {
extends: [res('../../.eslintrc.js')],
}
1 change: 1 addition & 0 deletions packages/integration-tests/.prettierrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
module.exports = require('../../.prettierrc')
Original file line number Diff line number Diff line change
@@ -1,8 +1,11 @@
import { applyMiddleware, createStore, combineReducers } from 'redux'
import {
get,
clear,
} from '@respond-framework/rudy/src/history/utils/sessionStorage'
import { locationToUrl } from '@respond-framework/rudy/src/utils'
import { createRouter } from '@respond-framework/rudy/src'
import awaitUrlChange from './awaitUrlChange'
import { get, clear } from '../src/history/utils/sessionStorage'
import { locationToUrl } from '../src/utils'
import { createRouter } from '../src'

export default async (...allArgs) => {
const args = allArgs.filter((arg) => typeof arg !== 'function')
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@ import renderer from 'react-test-renderer'
import { createStore, applyMiddleware } from 'redux'
import { Provider } from 'react-redux'

import { createRouter } from '../src'
import { createRouter } from '@respond-framework/rudy/src'

import Link, { NavLink } from '../src/Link'
import Link, { NavLink } from '@respond-framework/rudy/src/Link'

const createLink = async (props, initialPath, options, isNavLink) => {
const link = isNavLink ? <NavLink {...props} /> : <Link {...props} />
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { applyMiddleware, createStore, combineReducers } from 'redux'
import { createRouter, createScene } from '../src'
import { NOT_FOUND } from '../src/types'
import { createRouter, createScene } from '@respond-framework/rudy/src'
import { NOT_FOUND } from '@respond-framework/rudy/src/types'

import fakeAsyncWork from './fakeAsyncWork'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import createSmartHistory from '../src/history'
import { createInitialState } from '../src/core/createReducer'
import { NOT_FOUND } from '../src/types'
import createSmartHistory from '@respond-framework/rudy/src/history'
import { createInitialState } from '@respond-framework/rudy/src/core/createReducer'
import { NOT_FOUND } from '@respond-framework/rudy/src/types'

export default async (type, pathname) => {
// eslint-disable-line import/prefer-default-export
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { applyMiddleware, createStore, combineReducers } from 'redux'
import reduxThunk from 'redux-thunk'
import { createRouter, createScene } from '../src'
import { NOT_FOUND } from '../src/types'
import { createRouter, createScene } from '@respond-framework/rudy/src'
import { NOT_FOUND } from '@respond-framework/rudy/src/types'

import fakeAsyncWork from './fakeAsyncWork'

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { applyMiddleware, createStore } from 'redux'
import reduxThunk from 'redux-thunk'
import { createRouter } from '../src'
import { createRouter } from '@respond-framework/rudy/src'

const setup = (
path = '/',
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { createStore, applyMiddleware, combineReducers } from 'redux'
import createRouter from '../src/core/createRouter'
import createRouter from '@respond-framework/rudy/src/core/createRouter'

export default async (
path = '/',
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { NOT_FOUND } from '../../src/types'
import { NOT_FOUND } from '@respond-framework/rudy/src/types'
import createLink, { event } from '../../__test-helpers__/createLink'

test('ON_CLICK: dispatches location-aware action', async () => {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import createTest from '../../__helpers__/createTest'

jest.mock('../../src/utils/isHydrate', () => () => false)
jest.mock('../../src/utils/isServer', () => () => false)
jest.mock('@respond-framework/rudy/src/utils/isHydrate', () => () => false)
jest.mock('@respond-framework/rudy/src/utils/isServer', () => () => false)

createTest('callbacks called on load if SPA', {
FIRST: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { addRoutes } from '@respond-framework/rudy/src/actions'
import createTest from '../../../__helpers__/createTest'
import { addRoutes } from '../../../src/actions'

createTest(
'dispatch(addRoutes(routes))',
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { changeBasename } from '@respond-framework/rudy/src/actions'
import createTest from '../../../__helpers__/createTest'
import { changeBasename } from '../../../src/actions'

createTest(
'dispatch(changeBasename(name))',
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import createTest from '../../../__helpers__/createTest'
import {
push,
replace,
Expand All @@ -13,7 +12,8 @@ import {
setHash,
setBasename,
redirect,
} from '../../../src/actions'
} from '@respond-framework/rudy/src/actions'
import createTest from '../../../__helpers__/createTest'

const routes = {
FIRST: {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { notFound } from '@respond-framework/rudy/src/actions'
import createScene from '@respond-framework/rudy/src/createScene'
import createTest from '../../../__helpers__/createTest'
import { notFound } from '../../../src/actions'
import createScene from '../../../src/createScene'

createTest('dispatch(notFound())', {}, [notFound()])

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { redirect } from '@respond-framework/rudy/src/actions'
import createTest from '../../../__helpers__/createTest'
import { redirect } from '../../../src/actions'

createTest('dispatch(redirect(action))', {}, [redirect({ type: 'REDIRECTED' })])

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { jump } from '@respond-framework/rudy/src/actions'
import createTest, { resetBrowser } from '../../../../__helpers__/createTest'
import { jump } from '../../../../src/actions'

beforeEach(resetBrowser)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { jump } from '@respond-framework/rudy/src/actions'
import createTest, {
resetBrowser,
setupStore,
} from '../../../../__helpers__/createTest'
import { jump } from '../../../../src/actions'

beforeEach(async () => {
await resetBrowser()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { push } from '@respond-framework/rudy/src/actions'
import createTest, { resetBrowser } from '../../../../__helpers__/createTest'
import { push } from '../../../../src/actions'

beforeEach(resetBrowser)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { push } from '@respond-framework/rudy/src/actions'
import createTest, { resetBrowser } from '../../../../__helpers__/createTest'
import { push } from '../../../../src/actions'

beforeEach(resetBrowser)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { replace } from '@respond-framework/rudy/src/actions'
import createTest, { resetBrowser } from '../../../../__helpers__/createTest'
import { replace } from '../../../../src/actions'

beforeEach(resetBrowser)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { locationToUrl } from '@respond-framework/rudy/src/utils'
import { reset } from '@respond-framework/rudy/src/actions'
import createTest, { resetBrowser } from '../../../../__helpers__/createTest'
import { locationToUrl } from '../../../../src/utils'
import { reset } from '../../../../src/actions'

beforeEach(resetBrowser)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { locationToUrl } from '@respond-framework/rudy/src/utils'
import { reset } from '@respond-framework/rudy/src/actions'
import createTest, {
resetBrowser,
setupStore,
} from '../../../../__helpers__/createTest'
import { locationToUrl } from '../../../../src/utils'
import { reset } from '../../../../src/actions'

beforeEach(async () => {
await resetBrowser()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { set, setState } from '@respond-framework/rudy/src/actions'
import createTest, { resetBrowser } from '../../../../__helpers__/createTest'
import { set, setState } from '../../../../src/actions'

beforeEach(resetBrowser)

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { locationToUrl } from '@respond-framework/rudy/src/utils'
import { jump } from '@respond-framework/rudy/src/actions'
import createTest from '../../../../__helpers__/createTest'
import { locationToUrl } from '../../../../src/utils'
import { jump } from '../../../../src/actions'

createTest(
'set(action, n)',
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { locationToUrl } from '@respond-framework/rudy/src/utils'
import { jump } from '@respond-framework/rudy/src/actions'
import createTest from '../../../../__helpers__/createTest'
import { locationToUrl } from '../../../../src/utils'
import { jump } from '../../../../src/actions'

createTest(
'set(action, n)',
Expand Down
Loading