Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EDITOR-#473 Rewrite UploadData #489

Merged
merged 4 commits into from
Feb 3, 2024

Conversation

jass921026
Copy link
Contributor

@jass921026 jass921026 commented Jan 20, 2024

What is this PR for?

What type of PR is it?

Feature

Todos

No

What is the Github issue?

#473

How should this be tested?

cd Lightdance-Editor/utils
node initDB.js jsons/exportDataEmpty.json

然後 對 他不會動:tf:
因為在control/start=0裡面有某些LED part的effect是"" (空的) ,如果我直接把effect_id=null寫進DB,在後端重開之後就會crash (utils/data.rs第289行)
去年的做法是寫effect_id=-1,但是這樣在新的DB schema下會寫不進去 (relation會檢查id是不是合法的)
所以我目前是讓他直接噴error然後退出

如果把那個frame整個刪掉 目前是能夠成功執行(但我沒有很認真嘗試戳爛他)

還有就是目前還無法支援LED part但是type=COLOR的部分,是可以改成名字找到哪個就用哪個,但如果有一個color和一個led effect的name一模一樣時就會出事

Screenshots (if appropriate)

Questions

  • Do the license files need updating? Yes/No
  • Are there breaking changes for older versions? Yes/No
  • Does this need new documentation? Yes/No

@jass921026 jass921026 changed the title Server #473 EDITOR-#473 Rewrite UploadData Jan 20, 2024
@tom1484 tom1484 merged commit 720e9b0 into NTUEELightDance:2024-editor-server Feb 3, 2024
1 check passed
Jackbear8868 pushed a commit to Jackbear8868/LightDance-Editor that referenced this pull request Feb 9, 2024
ppg0921 pushed a commit to ppg0921/LightDance-Editor that referenced this pull request Feb 19, 2024
ppg0921 pushed a commit to ppg0921/LightDance-Editor that referenced this pull request Feb 19, 2024
tom1484 added a commit that referenced this pull request Feb 27, 2024
* move 2023 editor-server to others/

* refactor 2023 backup

* move 2023 prod-support

* move 2023 docker-compose

* add new editor-server

* update project settings for new editor-server

* modify code structure

* update project settings

* update lock files

* untrack migration files

* fix graphql path

* update editor-server setup procedures

* enrich documentations

* update basic structure

* add login and logout

* add login and logout

* add all necessary vars in envs.rs

* add all necessary vars in envs.rs

* change server setup

* remove Arc in global clients type

* update ws verification

* fix redis init and update

* remove editor-server in eslint workflow

* update dependencies

* EDITOR-#456 add CheckToken and update mod.rs

* change ws server path

* Editor #451 Rewrite GetDancerLEDData (#460)

* EDITOR-#451 finish request handler for api/getDancerLEDData

* EDITOR-#451 change LEDData structure

* EDITOR-#451 add comments

* EDITOR-#451 bug fix

---------

Co-authored-by: Ryan <113010586+b11901040@users.noreply.github.com>

* Editor #466 Add error handling (#482)

* EDITOR-#451 finish request handler for api/getDancerLEDData

* EDITOR-#451 change LEDData structure

* EDITOR-#466 replace unwrap with into_result

* EDITOR-#466 replace effect_id.unwrap() with into_result()

---------

Co-authored-by: Ryan <113010586+b11901040@users.noreply.github.com>

* Editor #461 Rewrite GetDancerFiberData (#464)

* EDITOR-461 finish request handler for api/getDancerFiberData

* EDITOR-#461 add error handling

* EDITOR-#461 add no dancer check

---------

Co-authored-by: Ryan <113010586+b11901040@users.noreply.github.com>

* EDITOR-#467 PositionMap, PositionFrame, RequestEdit resolvers (#469)

* EDITOR-#467 PositionMap query, mutation, and subscription

* EDITOR-#467 PositionFrame: query, mutation, subscription

* EDITOR-#467 fix conflict

* EDITOR-#467 RequestEdit mutation

* EDITOR-#467 Fix PositionMapScalar

* EDITOR-#467 Change name

* Editor #479 write Graphql resolvers for LED (#484)

* EDITOR-#479 finish led query

* EDITOR-#479 finish addLEDEffect mutation

* EDITOR-#479 finish editLEDEffect mutation

* EDITOR-#479 finish deleteLEDEffect mutation

* EDITOR-#479 move LEDEffectData to graphql/types

---------

Co-authored-by: Ryan <113010586+b11901040@users.noreply.github.com>

* rename incorrect types

* all task for control frame, comtrol map done (#490)

Co-authored-by: 謝沅瓏 <hsiehyuanlung@xieyuanlongde-MacBook-Pro.local>
Co-authored-by: Chu-Rong Chen <58879171+tom1484@users.noreply.github.com>

* fix incorrect name

* EDITOR-#485 Rewrite dancer and color for graphql (#498)

* EDITOR-#485. Update dancer.rs

* Update redis in dancer.rs

* EDITOR-#485 minor bug fixed

* Check if color is used in any frames

* fix compose

* fix type names

* fix color mut and pos sub

* add dancer queries

* fix sub types and redis_control

* fix request input name incorrect

* init blender folder

* add basic structure

* add basic structure

* add graphql cache and type annotatoin

* implement more sub

* fix ld_is_running not found

* add effectList sub

* add cache merges

* EDITOR-#452 Added auto-select in object panel (#453)

add auto-select handler in object panel

* add LEDMap sub, query and state

* add enum of object type

* support query variables

* add init dancer

* add init color_map

* fix handler registeration error

* change initialization steps

* correct startup and authentication procedures

* allow mutation

* add editor initializer

* add loading stage

* add addon packing script

* fix mutation not serialized

* fix color sub field missing

* add dotenv support

* enable production connection

* fix duplicated subscribe and init_editor

* add editor type switch

* add simple pos editor template

* support executing function when release slider

* fix circular import and add init current status and pos

* fix type checking in cache

* complete the logic of pos editor when frame changes

* split client and cache

* Color palette (#486)

* split client and cache

* Added color palette panel without async and without modifying local states

* Added async function to operators (with bugs)

* Fixed color edit confirm bug and show color palette after login

* changed variable names + precommit

* Color palette completed

* Changed UI and code structure

* added update function as color picker handler instead of msgbus

* refactor structure

* fix recursive update

---------

Co-authored-by: Chalkman071 <josephtseng2004@gmail.com>

* add notification system and separate different modification of maps

* implement pos editor and improve data synchronization

* add timeline panel

* complete timeline control and implement control editor

* complete control editor

* Editor-#483 [BLENDER] Setup editor (#493)

* Fetch data from backend and import glb file into blender

* placed dancers and set hierarchy

* add pos (with fake posmap) and fiber keyframe

* use fcurve to add keyframes, add fake pos keyframes and ctrl keyframes

* fixed bug

---------

Co-authored-by: Chu-Rong Chen <58879171+tom1484@users.noreply.github.com>

* maintain multi-select state

* add multi select ability

* add multi select in pos editor

* add led editor ui and fix mounting handlers before ready

* rewrite autoselect behavior

* fix multi-select issues

* add part list in control editor and improve UI

* fix request and delete frame

* add time shift and improve UI

* support modify start time

* add file client

* Editor #463 Rewrite Shift Resolver (#510)

* EDITOR-#463 Add FrameMutation to MutationRoot

* EDITOR-#463 Check Query and Update Database

* EDITOR-#463 Update Redis

* EDITOR-#463 Add types necessary for Subscription

* EDITOR-#463 Fix Types Mistake

* EDITOR-#463 Publish map and record

* EDITOR-#463 Fix sub types for shift

* EDITOR-#463 fix types from db

* fix shift input

* EDITOR-#495 Rewrite part for graphql (#516)

* EDITOR-#485. Update dancer.rs

* Update redis in dancer.rs

* EDITOR-#485 minor bug fixed

* Check if color is used in any frames

* rewrite part in rust

* fix merge conflict

* done add and delete

* EDITOR-#495 implement part mutation

---------

Co-authored-by: Chu-Rong Chen <58879171+tom1484@users.noreply.github.com>

* add revision support

* improve ui and add color icon

* improve error handling

* fix frame stuck after play

* add confirm on delete

* EDITOR-#473 Rewrite UploadData (#489)

* temp

* a

* debug

* handle no effect

* add revision to frames

* fix redis control

* fix led map and update redis

* fix update_redis_control and support no-change

* fix initRedis after upload

* EDITOR-#523 [SERVER] exportData (#524)

* rewrite data files and utils for 2024 config

* fix exportData format

* [EDITOR & SERVER] EDITOR-#520 (#527)

* add dancer layer to LED map

* auto create effects when adding color

* support new led map structure

* attach led effects to models and allow model used by multiple dancers

* support new led map and model-dancer structure in editor

* [EDITOR & SERVER] Change animation data for new structure (#528)

* add dancer layer to LED map

* support new led map structure

* attach led effects to models and allow model used by multiple dancers

* EDITOR-#512 [BLENDER] animation data update (#513)

* enabled LED keyframe loading, bugs fixed

* update animation data when applying changes to position map and control map

* bug fixes

* clear viewport before importing models, fetch uncompressed glb files instead of draco.glb files

* fixed type init in load

* display fade in timeline as ld_control_frame keyframes

* added models to asset as collections to enable lazy import

* add rev keyframe

* separate init_control_map from load

* change alpha display, minor fixes

* enabled lazy loading, revision management (untested)

* fixed iteration bug

* add ld_model_name bpy prop

* EDITOR-#512 [BLENDER] animation data update (#513)

* enabled LED keyframe loading, bugs fixed

* update animation data when applying changes to position map and control map

* bug fixes

* clear viewport before importing models, fetch uncompressed glb files instead of draco.glb files

* fixed type init in load

* display fade in timeline as ld_control_frame keyframes

* added models to asset as collections to enable lazy import

* add rev keyframe

* separate init_control_map from load

* change alpha display, minor fixes

* enabled lazy loading, revision management (untested)

* fixed iteration bug

* add ld_model_name bpy prop

* improve code and adjust model structure

* improve load and anim data

---------

Co-authored-by: Joseph Tseng <106340233+Chalkman071@users.noreply.github.com>

* fix db model

* fix deploy settings

* fix nginx config

* mutation led (#522)

* EDITOR-#500 [BLENDER] Waveform (#515)

* EDITOR-#500 fetch fix

* EDITOR-#500. for switching to 459

* EDITOR-#500. variable end frame

* EDITOR-#500. height-offset default to 1000

* EDITOR-#500. with waveform generation

* EDITOR-#500. with waveform generation

* EDITOR-#500. waveform generate

* EDITOR-#500. do not delete ffmpeg if already existed

* EDITOR-#500. real variable input

* EDITOR-#500. no comments

* EDITOR-#500. waveform width with ending frame

---------

Co-authored-by: Chu-Rong Chen <58879171+tom1484@users.noreply.github.com>

* add led effect mutations and fix mysql port

* add waveform in load.py and load.json

* implement new waveform method using OpenGL

* remove waveform from ignore

* fix init/close settings

* support speed control and improve ui setting

* align waveform to vertiacal center

* make parts well-ordered in blender

* fix model structure error

* remove headers in layout

* add constants and clear asset operator

* EDITOR-#519 [Blender] Clipboard (#534)

Co-authored-by: Chu-Rong Chen <58879171+tom1484@users.noreply.github.com>

* rewrite clipboard

* hide restrict columns in outliner

* fix led effect sub delete id

* EDITOR-#529 [BLENDER] LED effect editor (#532)

* enabled LED effect 'edit'

* enabled LED effect add/delete

* enabled (partial) subscription

* changed delete effect sub format in backend, clean unused import

* complete led map lazy update

* add name in led delete sub

* EDITOR-#535 [BLENDER] Dancer name tag (#536)

* added dancer name tag

* disabled deleting objects

* add ping route and revision system

* improve led and color update

* add reload and ping

* fix ping method

* add stage and change dancer orientation

* add stage config

* add migration after prisma compiled

* fix key error in subscription cache modifier and incorrect behavior in updating ld_control_frame's fade state

* fix lazy update

* separate multi select of led and fiber

* allow setting effect when multi select led

* EDITOR-#525 [SERVER] fix: wrong response in `get_dancer_led_data.rs` (#526)

* support auto create effect

* remove 'all' from default effect name

* fix effect handling in color mutations

* fixed name tag bug in local view (#538)

* apply updates before request edit

* EDITOR-#518 [BLENDER] Command center (#537)

* init command panel

* complete command center core

* added controller server websocket path in env

* Change controller server env to local, fixed command response bug

* fixed bug

* fixed bug

* ready clean (#531)

* Add dummy option in led editor, fix nametag bug (#541)

* trivial fix

* fix mesh replacing error

* EDITOR-#542 bug fix in get_dancer_led_data (#543)

Co-authored-by: Ryan <113010586+b11901040@users.noreply.github.com>

* support splitting dancer and merging led strips

* add frame clipboard

* fix floor unable to update

* improve prod cache

* fix lazy update

* allow clear asset before login

* modify datas

* add all dancer models

* update meta data

* modify pinMapTable part and getDancerData methods (#546)

Co-authored-by: lightdance <ntuee@ntu.edu.tw>

* update music

* update waveform generation

* ignore out/

---------

Co-authored-by: Ivantung <ypt0708@gmail.com>
Co-authored-by: Ryan <113010586+durantfs040@users.noreply.github.com>
Co-authored-by: Ryan <113010586+b11901040@users.noreply.github.com>
Co-authored-by: Bing-Wei, Chen <49435609+ChenBingWei1201@users.noreply.github.com>
Co-authored-by: hsieh22 <112859033+hsieh22@users.noreply.github.com>
Co-authored-by: 謝沅瓏 <hsiehyuanlung@xieyuanlongde-MacBook-Pro.local>
Co-authored-by: Cheng Chieh Huang <88771492+Cosmos4026@users.noreply.github.com>
Co-authored-by: Joseph Tseng <106340233+Chalkman071@users.noreply.github.com>
Co-authored-by: Chalkman071 <josephtseng2004@gmail.com>
Co-authored-by: Ivantung0708 <143319371+Ivantung0708@users.noreply.github.com>
Co-authored-by: 張均豪 <62426283+jass921026@users.noreply.github.com>
Co-authored-by: tom1484 <angelus0918866416@gmail.com>
Co-authored-by: clarawu0608 <117451571+clarawu0608@users.noreply.github.com>
Co-authored-by: BettyCheng <79003285+ppg0921@users.noreply.github.com>
Co-authored-by: Jackbear8868 <111693712+Jackbear8868@users.noreply.github.com>
Co-authored-by: GaPFang <112909417+GaPFang@users.noreply.github.com>
Co-authored-by: lightdance <ntuee@ntu.edu.tw>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants