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>
* Support multiple/nested sheets and sheet instances
* Add playground for instances
* Fix playground and example
* Change r3f's objectKey to storeKey to avoid confusion
* Update all editable/uniqueName variables used as store key to storeKey too
* Fix lint warnings
* Use more Nominal types to help with internal code id usage consistency
* Broke apart StudioHistoricState type
Co-authored-by: Aria <aria.minaei@gmail.com>
* Make editable schema based and fix a couple UX issues
* Refactor the icons a bit
* Add support for points, lines, line segments, and line loops
* Adjust nudge multipliers
* Fix types
* Fix helpers not showing on hover in some cases
* 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