blob: 9da2adacf97c871c7f6192800130ff720cc73da9 (
about) (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
import React, { useState, useEffect } from 'react'
import * as QueryString from 'query-string'
interface StorybookQueryParams {
storybook?: boolean
}
export const ToggleStorybook = (props) => {
const [StorybookUIRoot, setStorybookUIRoot] = useState<any>(null)
const [queryParams, setQueryParams] = useState<StorybookQueryParams>({})
useEffect(() => {
if (__DEV__) {
// Load the storybook UI once
setStorybookUIRoot(() => require('./storybook').StorybookUIRoot)
}
}, [])
useEffect(() => {
if (__DEV__) {
setQueryParams(QueryString.parse(window.location.search))
}
}, [window.location.search])
if (queryParams?.storybook) {
return StorybookUIRoot ? <StorybookUIRoot /> : null
} else {
return props.children
}
}
|