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

feat: change to SPA and vite #472

Merged
merged 3 commits into from
Aug 23, 2023
Merged

Conversation

frostming
Copy link
Collaborator

Signed-off-by: Frost Ming me@frostming.com

This is the second step. To remove gatsby and turn it into a React SPA.

Next, will continue to split the data files

Signed-off-by: Frost Ming <me@frostming.com>
@vercel
Copy link

vercel bot commented Aug 17, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
running-page ✅ Ready (Inspect) Visit Preview 💬 Add feedback Aug 19, 2023 11:57am

@frostming frostming changed the title feat: change to react and vite feat: change to SPA and vite Aug 17, 2023
@yihong0618
Copy link
Owner

Amazing !!!

@yihong0618 yihong0618 requested a review from vlin August 17, 2023 07:38
@yihong0618
Copy link
Owner

@vlin can you help to take a look?

Signed-off-by: Frost Ming <me@frostming.com>
Copy link
Owner

@yihong0618 yihong0618 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

telegram-cloud-photo-size-5-6271591901266294972-m

so cool!

import(`@assets/year_${year}.svg`).catch(() => ({
default: () => <div />,
}))
const YearSVG = React.lazy(() => yearStats[`./year_${year}.svg`]()
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lazy cool

# from pdm
- name: Set Variables and install dep
id: set_variables
run: |
sudo apt-get install libxml2-dev libxslt-dev python3-dev
sudo apt-get install libxml2-dev libxslt-dev python3-dev
Copy link
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this can be dropped I think its my temp fix...I forgot that

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll keep this since they might be used by the pip install step later.

Signed-off-by: Frost Ming <me@frostming.com>
@vlin
Copy link
Collaborator

vlin commented Aug 22, 2023

@vlin can you help to take a look?

Sorry I'm replying late😂, I've been swamped by minor chores recently.

I'm free now. On it.

export default defineConfig({
plugins: [react(), viteTsconfigPaths(), svgrPlugin()],
base: process.env.PATH_PREFIX || '/',
build: {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image
Later on, we may need to consider using manualChunks or incorporating plugins like vite-plugin-chunk-split to enable code splitting or custom chunking.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Considering loading data files with dynamic import or http request, in this way we can split the files from the bundle

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right👍, using asynchronous loading for data files can improve user experience. Skeleton screens can also be considered where appropriate.

Regarding the 6MB index.js file mentioned previously, the main concern is that after build completion, the large bundle size is unfavorable for initial page load. That's why splitting it into separate chunks during build was suggested. This could be optimized later.

Copy link
Collaborator

@vlin vlin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@frostming
Your solution is genius! Vite is a smarter choice~

@yihong0618
Copy link
Owner

amazing work merging now!

@yihong0618 yihong0618 merged commit 6a636f0 into yihong0618:v2.0 Aug 23, 2023
@frostming frostming deleted the react-spa branch August 23, 2023 13:21
ben-29 added a commit to ben-29/workouts_page that referenced this pull request Sep 23, 2023
* tag 'v2.0':
  chore: my data
  doc: v2.0 doc
  fix: by comments
  chore:gnore ./dist (yihong0618#494)
  fix: gpx encode error maybe
  fix: v2.0 can not zoom (yihong0618#492)
  fix: gh-pages to Actions and fix the path bug (yihong0618#490)
  doc: fix v2.0 doc and actions change (yihong0618#488)
  chore:upgrade node version and pnpm (yihong0618#474)
  fix: fix fullscreen css (yihong0618#487)
  feat: change to SPA and vite (yihong0618#472)
  feat: Typescript! (yihong0618#461)
  doc: todo for 2.0

# Conflicts:
#	.github/workflows/run_data_sync.yml
#	README-CN.md
#	README.md
#	assets/github.svg
#	assets/github_2022.svg
#	gatsby-config.js
#	gatsby-node.js
#	run_page/gpx_to_strava_sync.py
#	run_page/gpxtrackposter/track.py
#	run_page/kml2polyline.py
#	run_page/update_activities_file.py
#	run_page/xingzhe_sync.py
#	src/components/Layout/index.tsx
#	src/components/LocationStat/LocationSummary.tsx
#	src/components/LocationStat/PeriodStat.tsx
#	src/components/LocationStat/index.tsx
#	src/components/RunMap/index.tsx
#	src/components/RunTable/RunRow.tsx
#	src/components/RunTable/index.tsx
#	src/components/YearStat/index.tsx
#	src/hooks/useActivities.js
#	src/hooks/useSiteMetadata.js
#	src/pages/index.tsx
#	src/static/activities.json
#	src/static/run_countries.ts
#	src/utils/const.ts
#	src/utils/utils.ts
J-Cod3r added a commit to J-Cod3r/running_page that referenced this pull request Mar 22, 2024
* doc: todo for 2.0

* fix: vercel and github page both work

* Update gh-pages.yml

* Update README.md

* Update index.jsx

* Update index.jsx

* Update index.jsx

* Update const.js

* Update index.jsx

* Update index.jsx

* Update index.jsx

* Update README-CN.md

my workouts page.

* Update README-CN.md

* Update README-CN.md

* feat: add tulipsport support

* docs: 添加GitHub Pages方案说明文档到README-CN.md中;添加部分代码注视,并修复一个查询区间的时间取值问题

* style: reformatted tulipsport_sync.py by black

* style: reformatted tulipsport_sync.py by black again(indent-size: 2 spaces => 4 spaces)

* fix: 修复被覆盖的start_time_local,设置为end_time_local

* doc: 合并GitHub Pages配置说明,调整郁金香配置文档结构

* feat: tulipsport_sync.py add --with-gpx option

* chore: tulipsport sync add --with-gpx in run_data_sync.yml file

* fix: add the compatible check when activity node lost

* fix: use dict.__contains__ instead of if else.

* style: reformat the code~

* share my Running page

* doc: new runners

* doc: new runner

* Update README.md

* Add Codoon to run_data_sync.yml

* doc: new runner

* fix typo

* chore: update README

* fix: RunTime using `moving_time` from activity instead of `distance * pace`, also fix sorting

* Add: stevenash0822 homepage & Update: calculation of avgPace

* fix: yihong0618#396 yihong0618#403

* f

* style:fix runtable mix-width

Signed-off-by: shaoanianche <github@duanfei.org>

* refactor:cleanup code

* refactor:cleanup code

* refactor:fix dependency conflict warning

* refactor:fix dependency conflict warning

* refactor:fix dependency conflict warning

* refactor:fix dependency conflict warning

* refactor:fix dependency conflict warning

* refactor:fix dependency conflict warning

* refactor:fix dependency conflict warning

* refactor:fix dependency conflict warning

* commit: fix click area problem

* commit: add personal website

* commit: formatting

* fix: yihong0618#412

* fix: eval evil for joyrun and replace string by  install of

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* fix: lint

* 🏃 share muyids's running page

* doc: new runner

* doc: new runner

* fix: yihong0618#426

* 申请加入

* 城市分割问题修改

* Update utils.js

format code

* 申请加入

* refactor: use event delegation to handle all <rect> & <polyline> in the "Total" view.

* fix: drop useless log

* feat:add garmin device in strava_to_garmin_sync script

feat:add device info toggle

format

update

optimized code

fake

docs:add usage desc for strava_to_garmin

* style:add default value for use_fake_garmin_device

* chore: use <></> instead of the root node of the components to improve rendering performance

* chore: remove unnecessary <div> tags to reduce dom node nesting

* feat(privacy): ignore start, end and choose points

Signed-off-by: EINDEX <snowstarlbk@gmail.com>

* docs: adding eindex workouts page

* fix: catch ValueError for non-number RANGES

Signed-off-by: EINDEX <snowstarlbk@gmail.com>

* fix(privacy): using strava way to hidding polyline

* style: black format

* refactor(privacy): for-loop to list-comprehension and typo fix

* Fix ci (yihong0618#444)

* fix: ci

* fix: strava same logic as garmin

* doc: info only run

* fix: yihong0618#443

* feat:support for download Garmin fit file (yihong0618#446)

* feat:support for download Garmin fit file

* Update README-CN.md (yihong0618#447)

* Update README-CN.md

* fix: url

* fix: ignore device info for origin fit file in strava_to_garmin_sync (yihong0618#448)

* fix: ignore fit file origin device

fix: ignore fit file origin device

* docs: remove redundant English desc

* chore: remove test code

* style: reformat code

* fix: polyline_str maybe None

* fit文件读取 (yihong0618#449)

* feat: parse fit file

* Update README.md (yihong0618#453)

* Update README.md (yihong0618#455)

* Fix Sports Type in codoon_sync.py (yihong0618#457)

Change "Run" to "Running" so when uploading the TCX files to Strava, it won't be recognized as "Ride".

* Update README-CN.md (yihong0618#459)

* Save synced filenams and skip sync next times (yihong0618#454)

* feat: add synced file name in imported.json, then skip those files next time

* chore: add TCX_OUT\FIT_OUT dir in `yarn data:clean` cli

* reformated

* fix: add try except when load json

* save data files to cache

* Revert "save data files to cache"

This reverts commit cd3bcf9.

* fix: new synced_data_file_logger.py

* reformatted

* save GPX/FIT/TCX, activities, accets, data.db to github cache

* Revert "save GPX/FIT/TCX, activities, accets, data.db to github cache"

This reverts commit 55f48cc.

* resolve the code review issues.

* fix: put all types data files record in one json

* add update track data file names in the synced record file

* fix: 457, add TCX_TYPE_DICT (yihong0618#462)

* fix: yihong0618#454, no `file_names` when sync from app (yihong0618#463)

* fix: yihong0618#454, no `file_names` when sync from app

* fix

* 添加保存过程中产生的数据文件到github action cache选项,顺便重新整理了一下github aciton workflow (yihong0618#464)

* 添加保存过程中产生的数据文件到github action cache选项,顺便重新整理了一下github aciton workflow

1. run_data_sync 调用 gh_page方式改成了workflow_call,这样可以传递一些数据过去。可以把设置都放在run_data_sync env中完成。在github后台看来也在一个job中完成了。
2. 缓存默认关闭,添加了文档。
3. 三个workflow中的action版本做了升级。有好几个github action提示版本过低了。
4. python和node准备环境部分做了优化。用了setup python /setup node自带的cache参数。多余的几个step删了。

* node-version: "16" -> node-version: '16'

* feat: add BUILD_GH_PAGES to control build gh pages

* docs: BUILD_GH_PAGES in run_data_sync.yml

* ci: fix typo

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* readme中node版本修改 (yihong0618#466)

* Update README.md

和package.json同步。

* Update README-CN.md

与package.json同步

* Update README.md

修改成>=

* feat: Typescript! (yihong0618#461)

* feat: Typescript!

Signed-off-by: Frost Ming <me@frostming.com>

* chore: use node 16 as the base

Signed-off-by: Frost Ming <me@frostming.com>

* fix: remove use dependencies

Signed-off-by: Frost Ming <me@frostming.com>

---------

Signed-off-by: Frost Ming <me@frostming.com>

* fix: 同一天有多个运动时选中地图路线显示错误问题 (yihong0618#468)

* Add sync strava data args comment: `--only-run` (yihong0618#471)

* feat: change to SPA and vite (yihong0618#472)

feat: change to react and vite

Signed-off-by: Frost Ming <me@frostming.com>

* fix: set gh page default to true for newbie.......

* Add correction on instruction of build github pages. (yihong0618#476)

* feat: add a new runner's page (yihong0618#482)

* fix: using session to download keep route

* chore: merge example data

* doc: drop vercel cache build doc for newbie

* fix: fix fullscreen css (yihong0618#487)

* chore:upgrade node version and pnpm (yihong0618#474)


Signed-off-by: shaoanianche <github@duanfei.org>

* doc: fix v2.0 doc and actions change (yihong0618#488)

* fix: gh-pages to Actions and fix the path bug (yihong0618#490)

* fix: v2.0 can not zoom (yihong0618#492)

* This commit do these things,
cause react update to 18 there is a serious bug for
react-map-gl, so we deside to update it to v7.
for v7 there's a lot of break change, we fix them as follows:
- bring mapbox css to the file.
- change the api that break
- add two packages in it to fit the change
- change viewport name to viewState to fit the api change

* fix: git ignore

* style:
* line blur to smooth
* mapStyle using dark-v10 to solve the language problem
* FullscreenButton style fix

---------

Co-authored-by: ben_29 <ben_29@live.com>

* fix: gpx encode error maybe

* chore:gnore ./dist (yihong0618#494)

Signed-off-by: friendsa <github@duanfei.org>

* fix: by comments

* doc: v2.0 doc

* chore: my data

* fix wrong path (yihong0618#498)

* yihong0618#484 导出keep接口升级无法获取gpx数据的跑步记录 (yihong0618#496)

* fix: keep interface upgraded, retrieved gpx data maybe failed

* fix: lint

* style: reformat code

---------

Co-authored-by: F4ria <fariacool@gmail.com>

* fix Readme errors about `deploy to Cloudflare` (yihong0618#499)

* doc: chore, change typo

* fix: yihong0618#500

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* feat: fix garmin down (yihong0618#505)

* fix: garth package

* fix: reverse bug

* fix: use garth package

* Update README.md for 2.0 github pages deployment (yihong0618#506)

* Update README.md for 2.0 github pages deployment

* Update README-CN.md

* doc: bring perssions in page back

* fix: garmin sync cn configure

* fix typo (yihong0618#510)

* Update README.md

* Update README-CN.md

* 更新新版本佳明同步文档 (yihong0618#507)

* update garmin sync readme

* Update run_data_sync.yml

* fix: drop pngs

---------

Co-authored-by: yihong0618 <zouzou0208@gmail.com>

* feat: add IOS Shortcuts in README (yihong0618#513)

* fix: strava to garmin sync

* fix: yihong0618#516 (yihong0618#517)

* doc: new runner

* fix: upload to strava type

* fix: cityMatch (yihong0618#521)

(cherry picked from commit 7c3c05b)

* upd runner's page url (yihong0618#522)

* doc: new runner

* updatereadme (yihong0618#527)

* fix: yihong0618#484 keep gps data decode (yihong0618#524)

* fix: yihong0618#484 keep gps data decode

---------

Co-authored-by: yihong0618 <zouzou0208@gmail.com>

* fix: bring old logic back

* fix: drop useless png

* docs:rewrite docs (yihong0618#514)

docs:rewrite docs

Signed-off-by: shaoanianche <github@duanfei.org>

* doc: runner info fix

* fix: show in firefox

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* feat: add NavigationControl (yihong0618#534)

* feat:suport heart_rate in export gpx file (yihong0618#529)

* feat:suport heart_rate in export gpx file

* feat: reduce grid svg file size (yihong0618#535)

* upd deploy to github-pages  (yihong0618#537)

* 更新部署 github-pages 说明

* Update Deploy to Github-pages

---------

Co-authored-by: haowei.chen <chenhaowei93@163.com>

* fix: gh-pages build: drop the ref while trigger from Run Data Sync (yihong0618#540)

* fix: gh-pages build: drop the ref while trigger from Run Data Sync

* fix: nrc sync

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* Master (yihong0618#545)

* Update run_data_sync.yml

* Update run_data_sync.yml

* Update run_data_sync.yml

* add screenshot to show how to get nike refresh token

* add screenshot to show how to get nike refresh token

* refactor

* Update strava_to_garmin_sync.py (yihong0618#544)

Sort the activities downloaded from Strava by their id's thus they are uploaded to Garmin from the oldest to the latest. Otherwise, the latest one is uploaded first, and if the process is interrupted, any activities older than it will never be uploaded because the code before this line gets the latest activity from Garmin and only download those newer than it from Strava.

* doc: add nrc detail written by @angolap

* perf: use auto instead of scroll (yihong0618#550)

Co-authored-by: caojiawen <caojiawen@zmeng123.com>

* feat: `RunRow` toggle selection & cursor pointer (yihong0618#551)

* perf: split `activities.json` from index (yihong0618#552)

* fix a bug in track.py. (yihong0618#559)

* fix: yihong0618#566

* fix: update the year when change by Title & City, otherwise the `SVG` will be displayed and the table will not be shown if the previous status is 'Total' (yihong0618#567)

* fix: dockerfile typo thanks @dywu516

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* fix: Codoon tcx output use start_time as ID instead of Codoon id (yihong0618#568)

* fix: Codoon tcv output use start_time as ID instead of Codoon id

* fix lint by black

---------

Co-authored-by: anchao <chao.an@fastonetech.com>

* docs: add runner (yihong0618#571)

* feat: ✨ Support ga, default off (yihong0618#572)

* docs: add runner page (yihong0618#577)

add runner page

* 添加 (yihong0618#578)

Co-authored-by: ppz <ppzisgod@gmail.com>

* Update index.tsx (yihong0618#579)

bugfix: BPM Sort Function

* Reduce svg size & lzay load github.svg and grid.svg (yihong0618#580)

* feat: sync garmin cn to garmin global

* github workflow

* nits

* nits

* fix fit download gpx file (yihong0618#582)

* garmin-cn sync garmin-global tutorial in readme and readme-cn

* fix: lock lxml version

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* Refactor: sync garmin cn to global

Step 1: Sync all activities from Garmin CN to Garmin Global in FIT format.
If the activity is manually imported with a GPX, the GPX file will be synced.
Step 2: Generate track from gpx file.

* nits

* remove fake device

* fix: yihong0618#584 change fit-tool to garmin-fit-sdk (yihong0618#590)

* fix: 584 change fit-tool to garmin-fit-sdk

* feat: garmin - handle gpx(if exist) when sync with fit

* fix import error

* doc: SEMICIRCLE

* fix: wrap_device_info using fit-tool

---------

Co-authored-by: NaturezzZ <naturezzz@outlook.com>

* step 2, generate running page from .fit and .gpx

* nits

* fix readme

* Feat: lights switch (yihong0618#591)

* feat: Lights on and off

* style: Show boundary and line together, combine geoData(only when not combine yet)

* style: disable dash and transparent, stronger line when lights off

* style: Button alignment

* style: Fullscreen Button alignment

* feat: LIGHTS_ON config

* feat: PRIVACY_MODE config

* feat: PRIVACY_MODE config

* doc: note for PRIVACY_MODE (yihong0618#594)

* chore: my data

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* fix: resolve issue yihong0618#597 (yihong0618#599)

* set country name to chinese

* nits

* nits

* fix: svg not found causes page crash (yihong0618#598)

* Joyrun gpx export fix for pauses and gpx segments (yihong0618#601)

support pause, add segments to gpx

* fix: text position change when map zoom in and zoom out (yihong0618#604)

* set default file_suffix = gpx (yihong0618#609)

* set default file_suffix = gpx

* fix: lint

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

---------

Signed-off-by: yihong0618 <zouzou0208@gmail.com>
Co-authored-by: yihong0618 <zouzou0208@gmail.com>

* add yer1k's running page (yihong0618#608)

* Update ci.yml (yihong0618#610)

Upgrade checkout to v4 from v3 and setup-python from v4 to v5

* Update GitHub Actions and README (yihong0618#611)

* Update GitHub Pages+Custom domain instruction in README.md

* update gh-pages.yml

* update actions version in run_data_sync.yml

* Added zh instrustion for custom domain with github.io and yer1k's running page link

* fix: strava version

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* fix: stravaweblib version

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* fix: ts type error (yihong0618#622)

Signed-off-by: yihong0618 <zouzou0208@gmail.com>

* Fix README typo (yihong0618#624)

* feat: coros sync (yihong0618#623)

* feat: coros sync

---------

Co-authored-by: Dingkun Yang <81750079+yer1k@users.noreply.github.com>

* add run.drink.cafe (yihong0618#628)

* Update README.md

* Update README-CN.md

---------

Signed-off-by: shaoanianche <github@duanfei.org>
Signed-off-by: yihong0618 <zouzou0208@gmail.com>
Signed-off-by: EINDEX <snowstarlbk@gmail.com>
Signed-off-by: Frost Ming <me@frostming.com>
Signed-off-by: friendsa <github@duanfei.org>
Co-authored-by: yihong0618 <zouzou0208@gmail.com>
Co-authored-by: lingdeyiyicifang <31645840+lingdeyiyicifang@users.noreply.github.com>
Co-authored-by: frhfeng <82604834+frhfeng@users.noreply.github.com>
Co-authored-by: rdshoep <rdshoep@gmail.com>
Co-authored-by: Bob <971822071@qq.com>
Co-authored-by: nxg <73350203+imnxg@users.noreply.github.com>
Co-authored-by: Ziyuan Han <hanziyuan08@outlook.com>
Co-authored-by: tiny656 <tiny656@hotmail.com>
Co-authored-by: DuckTyping <1394466835@qq.com>
Co-authored-by: ben_29 <ben_29@live.com>
Co-authored-by: jojo <stevenash0822@126.com>
Co-authored-by: shaoanianche <github@duanfei.org>
Co-authored-by: linwentao <linwentao@babybus.com>
Co-authored-by: wonderfulest <545984095@qq.com>
Co-authored-by: Ray Wang <56377217+raywangsy@users.noreply.github.com>
Co-authored-by: 2tu <enum@foxmail.com>
Co-authored-by: linjianfeng <vlin@hotmail.com>
Co-authored-by: zhaohongxuan <hxzhenu@gmail.com>
Co-authored-by: EINDEX <snowstarlbk@gmail.com>
Co-authored-by: EINDEX <hi@eindex.me>
Co-authored-by: zhangyulai <zyl@zhangyl.com>
Co-authored-by: Agassi <agassi21@gmail.com>
Co-authored-by: Stefrex <ggwdwhu@gmail.com>
Co-authored-by: deepinwine <jiangjia0907@gmail.com>
Co-authored-by: Chongnuo Ji <hyyz172000@gmail.com>
Co-authored-by: ttkltll <ttkltll@163.com>
Co-authored-by: Frost Ming <mianghong@gmail.com>
Co-authored-by: jqz3.tech <zjq_joker@163.com>
Co-authored-by: Hao Dong <donghao526@gmail.com>
Co-authored-by: F4ria <f4riacool@gmail.com>
Co-authored-by: F4ria <fariacool@gmail.com>
Co-authored-by: Licardo <1014660822@qq.com>
Co-authored-by: Qingyang Li <congel@gmail.com>
Co-authored-by: NaturezzZ <46887061+NaturezzZ@users.noreply.github.com>
Co-authored-by: LeslieeHwang <90857426+LeslieeHwang@users.noreply.github.com>
Co-authored-by: Zetao Feng <fengzetao.zed@foxmail.com>
Co-authored-by: haowei93 <727171008@qq.com>
Co-authored-by: sober <soberzml2333@gmail.com>
Co-authored-by: haowei.chen <chenhaowei93@163.com>
Co-authored-by: Zion <67903793+zlog-in@users.noreply.github.com>
Co-authored-by: Li Peng <lipeng31@gmail.com>
Co-authored-by: orionna319 <85230052+orionna319@users.noreply.github.com>
Co-authored-by: caojiawen <caojiawen@zmeng123.com>
Co-authored-by: conanyangqun <yangqunxinli@163.com>
Co-authored-by: Chao An <andrew881003@qq.com>
Co-authored-by: anchao <chao.an@fastonetech.com>
Co-authored-by: iiiRyan <85ryan.blue@gmail.com>
Co-authored-by: 8824PPZ <36729296+8824PPZ@users.noreply.github.com>
Co-authored-by: ppz <ppzisgod@gmail.com>
Co-authored-by: ElvisZhu <zjb1229@gmail.com>
Co-authored-by: NaturezzZ <naturezzz@outlook.com>
Co-authored-by: Fahrayheit <raym0nd@outlook.com>
Co-authored-by: Sayid He <herq12315@gmail.com>
Co-authored-by: beer <beer5214@126.com>
Co-authored-by: Dingkun Yang <81750079+Yer1k@users.noreply.github.com>
Co-authored-by: tianheg <i@tianheg.co>
Co-authored-by: Garden Yuen <weaming@users.noreply.github.com>
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.

3 participants