* Switch from @shopify/web-worker to postMessage for useCompareExtension
* Type safety
* make formatting consistent
---------
Co-authored-by: ConorBobbleHat <c.github@firstpartners.net>
- Use Next.js 13 app directory for all routes except projects
- Add Tailwind (resolves#619) and use it for most components
- New footer
- Adjust navbar (logotype, buttons moved to right)
- Improve the styling of the search box
- New /settings/account page
- /credits grabs contributors list for this repo from GitHub's API
- Resolve #634
- New welcome page header with scrolling platform icons
* add projects list
* new project page
* mypy
* allow '.' in github identifiers
* implement project create
* project settings
* disallow anons from being project members
* uploadable project icon
* docker attempt
* fix tests
* add tests
* add description form
* refactor to add useEntity and FieldSet
* move FieldSet out of subdirectory
* use same page for project tabs
* scroll up to UnderlineNav when tab changes
* stylelint
* configure vscode mypy extension
* mypy
* fix mypy and dmypy
dmypy does not support follow_imports=silent. Instead we explicitly
disable most checks for asm_differ and m2c, which
has the same effect
* remove redundant mypy flags
* FieldSet style tweaks
* give UnderlineNav horiz padding
* fix swr mutate of project header
* few tweaks to help docker (#550)
* eth changes
* use POST/DELETE rather than PUT for project members
* add migration
* fix pr creation
* simplify project platform derivation
Co-authored-by: Mark Street <22226349+mkst@users.noreply.github.com>
Co-authored-by: Ethan Roseman <ethteck@gmail.com>
* refactor scratch actions to its own component
* move toolbar actions into nav area
* fit ScratchToolbar on one line where possible
* fix HydrationError
* reduce wasted space by calculating layout in js
* avoid layout shift when edit time changes
* move edit time next to scratch name
* stop showing "Active now" after time
* align edit time on baseline
* drop 'Edited' prefix
* Revert "Revert "Frontend performance/accessiblity tweaks (#539)" (#540)"
This reverts commit 01a6ad58d5.
* don't use swc
* make useCompilation error detecting more resilient
* add browserslist
* supply sizes prop to UserAvatar Image
* be less specific about error type
* update eslint for next.config.js
* add webpack-bundle-analyzer
* use next/future/image
* improve text contrast in various places
* render scratch page on server
* fix username color on user page
* add title to commit hash
* fix apple-touch-icon
* remove user-scalable=no
* oops
* new mobile nav
* desktop nav
* nav style tweaks
* fix new page
* use standard nav on scratch page
* prepare scratch layout for #266
* add fixme to defaultsize
* redesign ScratchToolbar
* add more links to nav menu
* don't display online marker on yourself
* disable user-scaling on scratch page
* fix small width overflow on index page
* disable scrolling on scratch page
* try fix codemirror teleportation bug
* fix#519
* patch over diff_flags type issue
* remove padding-right from loginstate
* responsive scratch layout
* fix warning
* remove progress bar
Was causing overflow-x issues
* use floating scrollbar on macos
* fix editor overflow
* add 'parent' url to TerseScratchSerializer
* add family page
* link to family in AboutScratch
* bump react-laag
* ui to edit diff label
* use User-Agent Client Hints API if supported
* fix pwa icons
* use carets instead of slashes between breadcrumbs
* use breadcrumbs on project function page
* fix save problem
* allow diff_label on compile
* a
* change placeholder
* new diff flags fix
* diff flags stuff
Co-authored-by: Ethan Roseman <ethteck@gmail.com>
* index page
* set index title
* cleanup
* at footer to 404
* move /scratch/new to /new
* fix update_scratch_score updating the scratch even if not required
* remove projects from index
* fix errors if you lack an avatar
* extra metadata in ScratchList
* add home button to scratch menu
* nav user menu popup
* add settings page
Fixes#61.
* use real links for menu links
* lint
* allow access to UserMenu when signed out
* mark comment
* rename 'Scratch settings' tab
* add platform logo to compileropts + give tab min width
* lint
* toolbar hamburger
* draggable diff bar
* scratch preferences modal
* prevent long names from breaking ui
* no scrollbar on vertical tabs
* AboutScratch overflow fixes
* update right pane width
* responsiveness
* toggle menus on multiple clicks
* temporarily remove settings link
* better scratch name behaviour on small widths
* remove nav from scratch page
* implement export
* menu style changes
* scratch name cursor:text
* lint
* don't use focus-visible
Unsupported on Safari
* show loading spinner in ButtonItems
* shortcuts
* footer credits icon
* add icons to scratch menu
* compile scratch in SSR
* score in AboutScratch
* give the toolbar its colour back
* diff compile changes
* give editable scratch name a hover state
* improve editor preferences ui
* tricolor toolbar,tabs,panels
* reduce diff header blur
* tweak scratch name bg color
* pass tests
* run tests on windows also
* postinstall: don't pipe to /dev/null as this doesnt work on windows
* make backend_test_windows into its own workflow
* skip tests where compiler is not supported
* fix mypy
* Backend changes to diff from label rather than 0, also possibly fix#109
* implement diff_label frontend & fix assemble_asm
* Log stack trace if asm-differ fails
* don't return { obj } from api
* slight change in stub func code
* GET /compilers returns arches for compilers
* GET /compilers returns arches for compilers
* keep compiler_ids
* Obtain ido from download script, add comment for permuter api support
* Clean m2c wrapper code, add left pointer style, add test
* fix 3 tests
* list arches from api
* fix cookies in DEBUG
SameSite=None is incompatible with Secure, and this causes some browsers
to ignore the cookie altogether.
* fix test
Regression due to changing API to not return { "user": User } but
rather just the User object itself.
* fix create scratch without glabel
This works around a backend bug
* add label select on scratch creation
* show compilers/presets for current arch only
- fixes#92
- fixes#132
* fix mypy issues
* use react instead of preact
* hold pages in src/pages/
This matches NextJS file structure; the names of files reflect their routing paths.
* migrate to NextJS
* use next-pwa
* statically generate user page
* fix github login
* add loading progress bar
* arch on scratch
* nav redesign
* use .env.local instead of local.env
* fix unset compiler not considering arch
* add discord server to readme
* big styling update
* add footer
* move compiler dir into components
* use lib dir
* fix ts error
* describe deployment
* dont use NEXT_PUBLIC_* in .env
* add storybook
* document storybook
* make AsyncButton loading state pretty
* remove sharp
* custom monaco editor react component
* ci: build frontend
* allow nextjs to build despite ignored typescript errors
* ci
* remove react-loading-skeleton
* oops
* don't request public_repo github scope
* give AsyncButton error popup its arrow back
* try fix monaco problem
* oops
* fix monaco red bg for real this time
Co-authored-by: Ethan Roseman <ethteck@gmail.com>