Skip to content

Commit 1f5aea9

Browse files
committed
fix build, add prettier plugin, rename to convention
1 parent 3a2ad1e commit 1f5aea9

File tree

14 files changed

+352
-50
lines changed

14 files changed

+352
-50
lines changed

.prettierrc

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,5 +6,7 @@
66
"trailingComma": "all",
77
"bracketSpacing": false,
88
"jsxBracketSameLine": true,
9-
"arrowParens": "avoid"
9+
"arrowParens": "avoid",
10+
"importOrder": ["^@(.*)$", "^([^~])$", "^~/(.*)$", "^[./]"],
11+
"importOrderSeparation": true
1012
}

package.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
"@babel/preset-react": "^7.12.10",
1919
"@babel/preset-typescript": "^7.12.7",
2020
"@babel/standalone": "^7.12.11",
21+
"@trivago/prettier-plugin-sort-imports": "^3.1.1",
2122
"@types/babel__core": "^7.1.12",
2223
"@types/babel__standalone": "^7.1.3",
2324
"@types/codemirror": "^0.0.102",
@@ -29,6 +30,7 @@
2930
"@types/react": "^17.0.0",
3031
"parcel-bundler": "^1.12.4",
3132
"parcel-plugin-linaria": "file:./forks/parcel-plugin-linaria",
33+
"prettier": "^2.4.1",
3234
"typescript": "^4.1.3"
3335
},
3436
"dependencies": {

src/Menu.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import {config} from './github/config'
77
import {$csrf, $githubToken, $githubUser} from './github/state'
88
import {logout} from './github/index'
99

10-
import {clickPrettify, prettier} from './settings'
10+
import {clickPrettify, prettierFx} from './settings'
1111
import {packageVersions, version} from './editor/state'
1212
import {selectVersion} from './editor'
1313
import {LoadingIcon} from './components/Icons/LoadingIcon'
@@ -259,7 +259,7 @@ const GitHubCatIcon = () => (
259259

260260
export const MenuContent = () => {
261261
const token = useStore($githubToken)
262-
const isPrettifyPending = useStore(prettier.pending)
262+
const isPrettifyPending = useStore(prettierFx.pending)
263263
const isOpen = useStore(isMenuOpen)
264264
const usedVersion = useStore(version)
265265
const versionList = useList(packageVersions, item => (

src/components/SecondaryTabs.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import {
1111
$logs as logs,
1212
LogsPanel as LogsView,
1313
} from '~/features/logs'
14-
import {autoScrollLog} from '../settings/state'
14+
import {$autoScrollLog} from '../settings/state'
1515
import {IconButton} from './IconButton'
1616
import {DesktopScreens, SmallScreens} from '../tabs/view'
1717
import {Outline} from './Outline'
@@ -36,7 +36,7 @@ const Tab = styled.li`
3636
`
3737

3838
const ToolbarView = createComponent(
39-
{logs, tab, autoScrollLog, $mainTab},
39+
{logs, tab, autoScrollLog: $autoScrollLog, $mainTab},
4040
({}, {$mainTab, logs, tab, autoScrollLog}) => (
4141
<TabHeaderList justify="space-between" style={{border: 'none'}}>
4242
<div style={{display: 'flex'}}>

src/editor/init.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import {sourceCode, codeError, version} from './state'
55
import {retrieveCode, retrieveVersion} from './retrieve'
66
import {compress} from './compression'
77
import {evaluator, versionLoader} from '../evaluator'
8-
import {typechecker} from '../settings/state'
8+
import {$typechecker} from '../settings/state'
99

1010
evalEffect.use(evaluator)
1111

@@ -65,7 +65,7 @@ forward({
6565

6666
sample({
6767
source: sourceCode,
68-
clock: [sourceCode, versionLoader, typechecker],
68+
clock: [sourceCode, versionLoader, $typechecker],
6969
target: evalEffect,
7070
})
7171

src/editor/state.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import {createStore, Store} from 'effector'
33
import {retrieveCode} from './retrieve'
44
import defaultVersions from '../versions.json'
55
import {StackFrame} from '../evaluator/stackframe/stack-frame'
6-
import {typechecker} from '../settings/state'
6+
import {$typechecker} from '../settings/state'
77

88
export const version: Store<string> = createStore(defaultVersions[0])
99
export const packageVersions: Store<string[]> = createStore(defaultVersions)
@@ -26,7 +26,7 @@ export const codeError = createStore<
2626
stackFrames: [],
2727
})
2828

29-
export const mode = typechecker.map((typechecker): string => {
29+
export const mode = $typechecker.map((typechecker): string => {
3030
if (typechecker === 'typescript') return 'text/typescript-jsx'
3131
return 'text/flow-jsx'
3232
})

src/evaluator/index.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import {combine, createEffect} from 'effector'
44
import {prepareRuntime} from './prepareRuntime'
55
import {selectVersion} from '../editor'
66
import {version, sourceCode, compiledCode} from '../editor/state'
7-
import {typechecker} from '../settings/state'
7+
import {$typechecker} from '../settings/state'
88
// TODO: remove exact dependency on feature, use requirements in the future
99
import {consoleMap} from '~/features/logs'
1010
import {realmStatusApi, realmListener, realmRemoveListener} from '../realm'
@@ -19,7 +19,7 @@ import {availablePlugins} from '@babel/standalone'
1919
import {codeMirror} from '~/editor/view'
2020

2121
const tag = `# source`
22-
const filename = combine(typechecker, (typechecker): string => {
22+
const filename = combine($typechecker, (typechecker): string => {
2323
if (typechecker === 'typescript') return 'repl.ts'
2424
return 'repl.js'
2525
})
@@ -240,7 +240,7 @@ export async function evaluator(code: string) {
240240
},
241241
],
242242
filename: filename.getState(),
243-
types: typechecker.getState() || 'typescript',
243+
types: $typechecker.getState() || 'typescript',
244244
pluginRegistry: {
245245
'effector/babel-plugin': babelPlugin,
246246
'effector/babel-plugin-react': PluginEffectorReact,

src/evaluator/runtime.tsx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
import {transform, registerPlugin, availablePlugins} from '@babel/standalone'
2-
import { BabelFileResult } from '@babel/core'
1+
import {availablePlugins, registerPlugin, transform} from '@babel/standalone'
32

43
export type BabelPlugin = string | [string, any]
54

@@ -67,8 +66,11 @@ export async function exec({
6766
function transformCode(code: string, babelOptions): string {
6867
const detail = transform(code, babelOptions)
6968
const compiled = detail.code
70-
window.addons ||= {}
71-
window.addons.transformation = detail
69+
if (!window['addons']) {
70+
window['addons'] = {}
71+
}
72+
// window['addons'] ||= {}
73+
window['addons'].transformation = detail
7274
window.dispatchEvent(new CustomEvent('@babel/transform', {detail}))
7375
const wrappedCode = `async function main() {
7476
${compiled}

src/init.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import './github/init'
66
import './share/init'
77
import './editor/init'
88

9-
import {autoScrollLog} from './settings/state'
9+
import {$autoScrollLog} from './settings/state'
1010
import {changeSources, selectVersion} from './editor'
1111
import {realmStatus} from './realm'
1212

@@ -16,14 +16,14 @@ import {
1616
autoScrollEnableClicked,
1717
} from '~/features/logs'
1818

19-
forward({from: autoScrollLog, to: logs.autoScrollLogChanged})
19+
forward({from: $autoScrollLog, to: logs.autoScrollLogChanged})
2020
forward({from: changeSources, to: logs.sourcesChanged})
2121
forward({from: selectVersion, to: logs.versionChanged})
2222
forward({
2323
from: realmStatus.map(status => status.active),
2424
to: logs.realmActiveChanged,
2525
})
2626

27-
autoScrollLog
27+
$autoScrollLog
2828
.on(autoScrollEnableClicked, () => true)
2929
.on(autoScrollDisableClicked, () => false)

src/settings/index.tsx

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,16 @@
11
import {SyntheticEvent} from 'react'
2-
import {createEvent, createEffect, Effect} from 'effector'
2+
import {createEffect, createEvent} from 'effector'
33

44
export const flowToggleChange = createEvent<SyntheticEvent<HTMLInputElement>>()
55

66
export const tsToggleChange = createEvent<SyntheticEvent<HTMLInputElement>>()
77

8-
export const typeHoverToggleChange = createEvent<
9-
SyntheticEvent<HTMLInputElement>
10-
>()
8+
export const typeHoverToggleChange = createEvent<SyntheticEvent<HTMLInputElement>>()
119

1210
export const clickPrettify = createEvent<any>()
13-
export const prettier: Effect<
14-
{code: string; parser: 'flow' | 'typescript' | 'babel'},
11+
export const prettierFx = createEffect<{code: string; parser: 'flow' | 'typescript' | 'babel'},
1512
string,
16-
Error
17-
> = createEffect()
13+
Error>()
1814

1915
export const enableAutoScroll = createEvent()
2016
export const disableAutoScroll = createEvent()

0 commit comments

Comments
 (0)