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>
* refactor: improve idents near DeterminePropEditor
* fix: Allow `MouseEvent` for `usePopover` `OpenFn`
* Anticipate to be used with `useDrag` (which is written using `MouseEvent`s)
* refactor: rename local variable depth to visualIndentation
* fix: Hide out of bounds LengthIndicator
* pointer: Fix type errors with `getPointerParts` using generics
* Fix param type for `getPointerMeta`
* Inline keyframe editor + popover nesting
* Complete inline editor,
* add reason for close popover, &
* enable popover nesting
* enable inline keyframe editing with splitting of DeterminePropEditor
* usePopover has PopoverAutoCloseLock helper
Co-authored-by: Elliot <key.draw@gmail.com>
Co-authored-by: Aria <aria.minaei@gmail.com>
* prop editor: Reorganize prop-editors & improve documentation
Co-authored-by: Cole Lawrence <cole@colelawrence.com>
Co-authored-by: Elliot <key.draw@gmail.com>
Co-authored-by: Elliot <key.draw@gmail.com>
Co-authored-by: Aria <aria.minaei@gmail.com>
* Use more Nominal types to help with internal code id usage consistency
* Broke apart StudioHistoricState type
Co-authored-by: Aria <aria.minaei@gmail.com>
* Fix react-icons breaking in CRA 5 for some reason
* Replace fuzzysort with fuzzy so we don't break Webpack
Webpack messes up esbuild’s internal modules if the inlined module is an AMD module. Check any new dep you add if it is an AMD module.
* Inline dataverse deps.
Mainly because the CJS build consuming the ESM lodash-es broke some bundlers.
* react-icons fix nr 2
* Stop eslint breaking in CRA 5
* Update r3f-cra example to CRA 5 and fix double-bundling react & co
* Fix r3f tree-shaking and switch to ESM only output
* Make r3f example shake studio and its extension in prod
* Examples have separate and wildly differing build setups so remove them from the pre-commit hook linting
* Update out-of-date yarn.lock