* Fetches link previews for all links in message (instead of just the first one)
* message url component to display preview for multiple urls
* Revert visible behaviour back to only showing one URL preview
While fetching all link previews in the text message.
* Moved URL preview VM to MessageComposer
* Added com.beeper.linkpreviews to messages sent with the markdown compositor
* MSC 4452 implemented for the older (markdown) composer
* claude told me to use logger instead of console
* Previews generated with snapshot instead of vm
* moved attachPreviews to a separate file
* added attach URL previews to rich text editor
* don't let attachUrlPreviews block clearning the composer
* fixed linter errors
* moved url preview behind labs feature gate
* passed linters
* moved lab feature checking to where attach preview is used
* claude wrote some unit tests for url previewing
* fixed linter errors
* added feature to labs.md
* fixed linter errors
* fixed oxfmt error
* set previews to none if all previews failed
* resolved PR reviews besides the ones that requires a larger code change
* moved url preview VM creation to message composer
* removed delay when clearing composer url preview on message send
* minor changes to stop using globals everywhere
* moved debouncing responsibility to urlpreviewVM
* minor lint fixes
* added comment
* remove composer content from the state of urlpreview, moved it to the vm
* urlpreviewwrapper depends on the vm only
* added comments
* edited the comment
* updated snapshots
* claude fixed tests
* enable feature for tests that requires MSC4095
* updated snapshot
* Expose SDKContextClass via window for debugging
* Remove stores from window if they are exposed via sdkContext
* Avoid usages of global store instance where React context is accessible
* Fix tests by adding SDKContext.Provider
* Fix tests by adding SDKContext.Provider
* Fix tests by adding SDKContext.Provider
* Fix tests by adding SDKContext.Provider
* Iterate
* Discard changes to apps/web/src/components/views/elements/AppTile.tsx
* Separate out SDKContext
...from SDKContextClass, as the comments hopefully explain.
Also make the captitalisation consistent.
* Adding the new file usually helps too
* Fix import
* More comment
* Update the various imports of SDKContextClass
* Also fix case of TestSDKContext
* Update the mock
* Don't re-export MainSplitContentType enum
I don't see why this was necessary, importing RoomView pulls in all sort
of stuff, whereas RoomContext is much smaller.
* ts, not tsx
* unintentional change
* Initial reword of upload to MVVM.
* Update tests
* More incremental improvements
* Refactor tests to use helper method for composer uploads.
* Add drag and drop tests
* lint
* Add commentary
* fixup test
* More precise selector
* Retarget uploads
* lint
* fixup
* one more type
* update snap
* Fixup composerUploadFiles
* fix import
* lint
* Copy and paste fixes too
* Add tests for pasting
* Add tests for pasting files.
* Remove redundant fn
* rm comment
* tidy up
* Test cleanup
* More clean up
* another fix
* Use condensed version
* Cleanup tests
* more cleaning
* last bity
* s/throw Error/throw new Error/
* Port over linkifyJS to shared-components.
* Drop rubbish
* update lock
* quickfix test
* drop group id
* Modernize tests
* Remove stories that aren't in use.
* Complete working version
* Add copyright
* tidy up
* update lock
* Update snaps
* update snap
* undo change
* remove unused
* More test updates
* fix typo
* fix margin on preview
* move margin block
* snapupdate
* prettier
* Port url preview logic to a view model.
* More fiddling with VM logic
* Note to self
* Refactor away into a shared component.
* Even more lovely lovely code that makes it look prettier
* translation cleanup
* Even more stuff that I need to fix yay
* Remove .last-run.json
* Update snaps
* Ensure we set showUrlPreview
* Cleanup tests
* lint + add png support
* Add a label
* Cleanup
* Add snaps
* Update snaps
* update playwright
* Refactors
* update snap
* Add missing snap
* Remove editing code (we check this in a better way in componentDidUpdate)
* Add README
* fix the one unused import
* Style shuffling
* Update vis tests
* Finally fix the tooltip
* Remove unused prop
* Add some padding
* fix lint issue
* Design improvements
* new screens
* Update snaps
* Fix CSS specificity
* Remove stale screenshot
* Rename function to match reality
* Port viewmodel tests to snapshots
* finish documenting types
* Stop being dangerous
* Use Linkify+decode for description
* Remove ability for VM to do linkifying.
* Port over linkifyJS to shared-components.
* Drop rubbish
* update lock
* quickfix test
* drop group id
* Modernize tests
* Remove stories that aren't in use.
* Complete working version
* Add copyright
* tidy up
* update lock
* Update snaps
* update snap
* undo change
* remove unused
* More test updates
* fix typo
* fix margin on preview
* move margin block
* snapupdate
* prettier
* cleanup a test mistake
* Fixup sonar issues
* Don't expose linkifyjs to applications, just provide helper functions.
* Add story for documentation.
* remove $
* Use a const
* typo
* cleanup var name
* remove console line
* Changes checkpoint
* Convert to context
* Revert unrelated change.
* more cleanup
* Add a test to cover ignoring incoming data elements
* Make tests happy
* Update tests for LinkedText
* Underlines!
* fix lock
* remove unused linkify packages
* import move
* Remove mod to remove underline
* undo
* fix snap
* another snapshot fix
* More cleanup
* Tidy up based on review.
* fix story
* Pass in args
* update snap
* cleanup
* use source image
* oops
* remove client peg
* Remove unused state
* tidy up code
* Ensure we update the preview when the event content may have changed.
* s/global/globalThis/
* Ensure we don't stretch images
* Update screenshots
* Cleanup
mkdir apps/web/scripts
mv scripts/{cleanup.sh,ci_package.sh,copy-res.ts,deploy.py,package.sh} apps/web/scripts
And a couple of gitignore tweaks
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>