3d10325873
This implements some basic infra for testing Theatre.js with popular setups such as npm/yarn/pnpm, webpack/vite/parcel, js/ts, etc. So far, the only existing setup has been with create-react-app. Will add more in the future. Co-authored-by: Fülöp <fulopkovacs@users.noreply.github.com> Co-authored-by: Aria Minaei <aria.minaei@gmail.com>
39 lines
836 B
JavaScript
39 lines
836 B
JavaScript
/**
|
|
* Builds all the packages for production
|
|
*/
|
|
|
|
const packagesToBuild = [
|
|
'theatre',
|
|
'@theatre/dataverse',
|
|
'@theatre/react',
|
|
'@theatre/browser-bundles',
|
|
'@theatre/r3f',
|
|
]
|
|
;(async function () {
|
|
// better quote function from https://github.com/google/zx/pull/167
|
|
$.quote = function quote(arg) {
|
|
if (/^[a-z0-9/_.-]+$/i.test(arg)) {
|
|
return arg
|
|
}
|
|
return (
|
|
`$'` +
|
|
arg
|
|
.replace(/\\/g, '\\\\')
|
|
.replace(/'/g, "\\'")
|
|
.replace(/\f/g, '\\f')
|
|
.replace(/\n/g, '\\n')
|
|
.replace(/\r/g, '\\r')
|
|
.replace(/\t/g, '\\t')
|
|
.replace(/\v/g, '\\v')
|
|
.replace(/\0/g, '\\0') +
|
|
`'`
|
|
)
|
|
}
|
|
|
|
await Promise.all([
|
|
$`yarn run build:ts`,
|
|
...packagesToBuild.map(
|
|
(workspace) => $`yarn workspace ${workspace} run build`,
|
|
),
|
|
])
|
|
})()
|