Giter VIP home page Giter VIP logo

diff-viewer-extension's People

Contributors

dependabot[bot] avatar pierremtb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

diff-viewer-extension's Issues

Before and after view are flipped

image

Somehow just realized this. Was opening an old repo of mine that I created for Shortline, containing demo edits on parts through commits and PRs to demo the additions/deletions view. Turns out I didn't noticed that the current before/after view is flipped, "before" is on the right (green), and "after" is on the left (red)

Will fix asap

image

Support async file conversions

was going to show @jgomez720 an example of creating a file conversion then polling api_calls.get_async_operation to get the output but couldnt find that code which lead to my curiousity of what we are doing here for large file conversions?

Add default avatar from website

Right now it's either user.image or a kittycad logo. Seems like would be pretty straightforward to add the same fallback avatar generation based on email here as well.

From KittyCAD/website/components/HeaderAccountMenu.tsx:

import { createAvatar } from '@dicebear/avatars'
import * as avatarStyles from '@dicebear/avatars-bottts-sprites'

then

        user?.image ||
            createAvatar(avatarStyles, {
                seed: user?.email || 'some-seed',
                dataUri: true,
            })

Improve diff injection performance

At least two improvements:

  1. Use a React portal for Loading and CadDiff elements
  2. Start all GetFileDiff promises at once, instead of awaiting each one (~parallel download & conversion)

Add Reset View button to CadDiff

Even if pan is disabled for now, it's still possible for the user to loose the part. Would be nice to add a Reset View button as soon as the view is altered

Find a unique id to disable billing

As discussed with @jessfraz today, we need to find a way to avoid having the user pay $0.50 for each file for every pull request they look at, that is in the current implementation where the diff is generated browserside everything

The user agent might be a good option

Add better visual error message

Right now there's a little paragraph repeated in two places that is needed at a third one, need to turn this into a nice component

Migration to vite v5

Also includes vitest and likely other upgrades.

Initial attempt at #495 before closing f9095dc, got vite build to work but not vitest

Stop using deprecated endpoints

When you perform a file conversion, the JSON object in the HTTP response has an output field. This field is now deprecated and has been replaced with the outputs field. As the name implies, outputs can hold multiple output files. This is helpful because if the client sends many files to convert, the server can respond with all those files :)

I really want to remove this deprecated field from the server, but we can't do that until the diff viewer extension stops using it.

Add an indicator when Combined mode is loading

Already tried this and couldn't find a straightforward solution. For some parts the Combined mode can take a minute to load.

Suspense and some if checks didn't work, need to continue to investigate

Re-enable STL support

Right now we don't filter out .stl files for conversion before viewing (as .stl), and the API of course refuses to convert .stl to .stl

Support commit diffs

Right now with #1, the injection only works with pull requests diffs, not commit diffs.

Issues with blob viewer

Noted after #246 got in

  • The original preview for STL files remains under Code, so the user switches between our view and the native preview
  • Switching back to Preview from Blame doesn't trigger a reinject

Improve release process

Right now the two biggest problems following #98

  1. main needs to be manually unprotected to let the github action commit and push the version bump
  2. since the release+tag is what starts the action, the version corresponding to the tag is wrong (the commit right after the tag fixes it)

We solve both by having a bump version PR before we start the release, and remove the auto commit from the action itself

Fix .stp support

Right now .step files are detected as compatible but not .stp

New dummy CAD repo and matching e2e tests

Right now the tests are pointing to somewhat random changes on other repos assets here, like https://github.com/KittyCAD/kittycad.ts/pull/3/files where the .obj file is only added, not modified. My manual testing when developing often takes place on https://github.com/pierremtb/SwStpGitExample, an old repo I had created for myself 2y ago.

I think we should create a new one in the KittyCAD org, with dummy "real cad use" commits and PRs. And update the e2e tests to point to it

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.