Skip to content
This repository was archived by the owner on Mar 4, 2020. It is now read-only.

Commit cba38b0

Browse files
committed
Merge branch 'master' of https://github.com/stardust-ui/react into chore/enable-hmr
2 parents 6cda6b4 + 3f33137 commit cba38b0

File tree

35 files changed

+900
-1327
lines changed

35 files changed

+900
-1327
lines changed

babel.config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
module.exports = {
2-
babelrcRoots: ['./packages/*'],
2+
babelrcRoots: ['./docs/*', './packages/*', './perf/*'],
33
}

build/gulp/tasks/test-projects.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,9 @@ const packStardustPackages = async (logger: Function): Promise<PackedPackages> =
4545
// as lernaAliases append 'src' by default
4646
const stardustPackages = lernaAliases({ sourceDirectory: false })
4747

48+
// We don't want to pack a package with our dev tools
49+
delete stardustPackages['@stardust-ui/internal-tooling']
50+
4851
await Promise.all(
4952
Object.keys(stardustPackages).map(async (packageName: string) => {
5053
const filename = tmp.tmpNameSync({ prefix: `stardust-`, postfix: '.tgz' })

build/tsconfig.common.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
"typeRoots": ["../types", "../node_modules/@types"],
1515
"jsx": "react",
1616
"importHelpers": true,
17+
"isolatedModules": true,
1718
"moduleResolution": "node",
1819
"sourceMap": true,
1920
"allowJs": false,

build/tsconfig.commonjs.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"extends": "./tsconfig.common.json",
33
"compilerOptions": {
4+
"isolatedModules": false,
45
"module": "commonjs"
56
},
67
"include": ["../packages/react/src", "../types"]

build/tsconfig.es.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
22
"extends": "./tsconfig.common.json",
33
"compilerOptions": {
4+
"isolatedModules": false,
45
"module": "esnext"
56
}
67
}

build/webpack.config.perf.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import * as CopyWebpackPlugin from 'copy-webpack-plugin'
2+
import * as ForkTsCheckerWebpackPlugin from 'fork-ts-checker-webpack-plugin'
23
import { webpack as lernaAliases } from 'lerna-alias'
34
import { argv } from 'yargs'
45

@@ -32,16 +33,16 @@ const webpackConfig: any = {
3233
rules: [
3334
{
3435
test: /\.(js|ts|tsx)$/,
35-
loader: 'awesome-typescript-loader',
36+
loader: 'babel-loader',
3637
exclude: /node_modules/,
3738
options: {
38-
configFileName: paths.base('build/tsconfig.perf.json'),
39-
useCache: true,
39+
cacheDirectory: true,
4040
},
4141
},
4242
],
4343
},
4444
plugins: [
45+
new ForkTsCheckerWebpackPlugin({ tsconfig: paths.base('build/tsconfig.perf.json') }),
4546
new CopyWebpackPlugin([
4647
{
4748
from: paths.perfSrc('index.html'),

build/webpack.config.stats.ts

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -43,15 +43,10 @@ const makeConfig = (srcPath, name) => ({
4343
rules: [
4444
{
4545
test: /\.(js|ts|tsx)$/,
46-
loader: 'ts-loader',
47-
include: /src/,
46+
loader: 'babel-loader',
47+
exclude: /node_modules/,
4848
options: {
49-
configFile: paths.base('build/tsconfig.es.json'),
50-
transpileOnly: true,
51-
onlyCompileBundledFiles: true,
52-
compilerOptions: {
53-
declaration: false,
54-
},
49+
cacheDirectory: true,
5550
},
5651
},
5752
],

docs/.babelrc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"extends": "@stardust-ui/internal-tooling/babel"
3+
}
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
export { default, ComponentExampleProps } from './ComponentExample'
1+
export * from './ComponentExample'
2+
export { default } from './ComponentExample'
Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
export * from './componentAPIs'
2-
export {
3-
default,
4-
ComponentSourceManagerLanguage,
5-
ComponentSourceManagerRenderProps,
6-
} from './ComponentSourceManager'
2+
3+
export { default } from './ComponentSourceManager'
4+
export * from './ComponentSourceManager'

docs/src/components/Editor/index.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
export { default, EditorProps, EDITOR_BACKGROUND_COLOR, EDITOR_GUTTER_COLOR } from './Editor'
1+
export { default } from './Editor'
2+
export * from './Editor'

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@
6464
"@types/react-dom": "^16.8.3",
6565
"@types/react-is": "^16.7.1",
6666
"@types/react-router": "^4.0.27",
67-
"awesome-typescript-loader": "^5.2.1",
67+
"babel-loader": "^8.0.6",
6868
"circular-dependency-plugin": "^5.0.2",
6969
"clean-webpack-plugin": "^0.1.19",
7070
"color": "^3.1.0",
@@ -80,6 +80,7 @@
8080
"express": "^4.15.4",
8181
"extract-comments": "^1.0.0",
8282
"faker": "^4.1.0",
83+
"fork-ts-checker-webpack-plugin": "^1.3.3",
8384
"gh-pages": "^1.0.0",
8485
"glob": "^7.1.2",
8586
"gulp": "^4.0.0",
@@ -126,7 +127,6 @@
126127
"syncpack": "^4.3.1",
127128
"through2": "^2.0.3",
128129
"tmp": "^0.0.33",
129-
"ts-loader": "^5.3.0",
130130
"ts-node": "^6.1.0",
131131
"tsconfig-paths": "^3.7.0",
132132
"tslint": "^5.11.0",

packages/docs-components/.babelrc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"extends": "@stardust-ui/internal-tooling/babel"
3+
}
Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,16 @@
11
module.exports = {
22
presets: [
3-
[
4-
'@babel/preset-env',
5-
{
6-
useBuiltIns: 'entry',
7-
},
8-
],
3+
['@babel/preset-env', { modules: false }],
94
'@babel/preset-react',
105
'@babel/preset-typescript',
116
],
12-
plugins: ['@babel/plugin-proposal-class-properties'],
7+
plugins: ['@babel/plugin-proposal-class-properties', '@babel/plugin-transform-runtime'],
138
env: {
9+
delelopment: {
10+
plugins: ['react-hot-loader/babel'],
11+
},
1412
test: {
15-
plugins: [
16-
[
17-
'@babel/plugin-transform-runtime',
18-
{
19-
regenerator: true,
20-
},
21-
],
22-
],
13+
presets: [['@babel/preset-env', { modules: 'commonjs' }]],
2314
},
2415
},
2516
}

packages/react-component-event-listener/src/EventListener.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ import * as React from 'react'
33
import addEventListener from './lib/addEventListener'
44
import removeEventListener from './lib/removeEventListener'
55
import shouldUpdateListener from './lib/shouldUpdateListener'
6-
import { EventListenerProps, listenerPropTypes } from './types'
6+
import { EventListenerProps } from './types'
7+
import { listenerPropTypes } from './types.internal'
78

89
class EventListener extends React.Component<EventListenerProps> {
910
static displayName = 'EventListener'

packages/react-component-event-listener/src/StackableEventListener.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ import addEventListener from './lib/addEventListener'
44
import removeEventListener from './lib/removeEventListener'
55
import * as listenerRegistries from './lib/listenerRegistries'
66
import shouldUpdateListener from './lib/shouldUpdateListener'
7-
import { EventListenerProps, listenerPropTypes } from './types'
7+
import { EventListenerProps } from './types'
8+
import { listenerPropTypes } from './types.internal'
89

910
class StackableEventListener extends React.Component<EventListenerProps> {
1011
static displayName = 'StackableEventListener'

packages/react-component-event-listener/src/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,4 @@ export const windowRef: TargetRef = {
99

1010
export { default as EventListener } from './EventListener'
1111
export { default as StackableEventListener } from './StackableEventListener'
12-
export { EventHandler, EventListenerProps, EventTypes, TargetRef } from './types'
12+
export * from './types'

packages/react-component-event-listener/src/lib/addEventListener.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import { EventHandler, EventTypes, ListenerActionOptions } from '../types'
1+
import { EventHandler, EventTypes } from '../types'
2+
import { ListenerActionOptions } from '../types.internal'
23

34
const addEventListener = (listener: EventHandler<EventTypes>, options: ListenerActionOptions) => {
45
const { targetRef, type, capture } = options

packages/react-component-event-listener/src/lib/removeEventListener.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
import { EventHandler, EventTypes, ListenerActionOptions } from '../types'
1+
import { EventHandler, EventTypes } from '../types'
2+
import { ListenerActionOptions } from '../types.internal'
23

34
const removeEventListener = (
45
listener: EventHandler<EventTypes>,
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import * as PropTypes from 'prop-types'
2+
import { EventListenerProps, EventTypes, TargetRef } from './types'
3+
4+
export type ListenerActionOptions = {
5+
capture: boolean
6+
targetRef: TargetRef
7+
type: EventTypes
8+
}
9+
10+
export const listenerPropTypes = {
11+
capture: PropTypes.bool,
12+
listener: PropTypes.func.isRequired,
13+
targetRef: PropTypes.shape({
14+
current: PropTypes.object,
15+
}).isRequired,
16+
type: PropTypes.string.isRequired,
17+
} as Record<keyof EventListenerProps, any>
Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import * as PropTypes from 'prop-types'
21
import * as React from 'react'
32

43
export interface EventListenerProps {
@@ -18,18 +17,4 @@ export interface EventListenerProps {
1817
export type EventHandler<T extends EventTypes> = (e: DocumentEventMap[T]) => void
1918
export type EventTypes = keyof DocumentEventMap
2019

21-
export type ListenerActionOptions = {
22-
capture: boolean
23-
targetRef: TargetRef
24-
type: EventTypes
25-
}
2620
export type TargetRef = React.RefObject<Node | Window>
27-
28-
export const listenerPropTypes = {
29-
capture: PropTypes.bool,
30-
listener: PropTypes.func.isRequired,
31-
targetRef: PropTypes.shape({
32-
current: PropTypes.object,
33-
}).isRequired,
34-
type: PropTypes.string.isRequired,
35-
} as Record<keyof EventListenerProps, any>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
export { default as Unstable_NestingAuto } from './NestingAuto'
2-
export { GetRefs, NodeRef } from './types'
2+
export * from './types'

packages/react-component-ref/src/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ export { default as handleRef } from './handleRef'
22
export { default as isRefObject } from './isRefObject'
33
export { default as toRefObject } from './toRefObject'
44

5-
export { default as Ref, RefProps } from './Ref'
5+
export * from './Ref'
6+
export { default as Ref } from './Ref'
67
export { default as RefFindNode } from './RefFindNode'
78
export { default as RefForward } from './RefForward'

packages/react/src/components/Popup/positioningHelper.ts

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,19 @@
1-
export { Placement } from 'popper.js'
2-
import { Placement } from 'popper.js'
3-
1+
export type Placement =
2+
| 'auto-start'
3+
| 'auto'
4+
| 'auto-end'
5+
| 'top-start'
6+
| 'top'
7+
| 'top-end'
8+
| 'right-start'
9+
| 'right'
10+
| 'right-end'
11+
| 'bottom-end'
12+
| 'bottom'
13+
| 'bottom-start'
14+
| 'left-end'
15+
| 'left'
16+
| 'left-start'
417
export type Position = 'above' | 'below' | 'before' | 'after'
518
export type Alignment = 'top' | 'bottom' | 'start' | 'end' | 'center'
619

0 commit comments

Comments
 (0)