{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":834939261,"defaultBranch":"main","name":"sast-evento","ownerLogin":"NJUPT-SAST","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2024-07-28T19:01:56.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/66597815?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1726803425.0","currentOid":""},"activityList":{"items":[{"before":"02c151b378c0aac1a80c73c88628b701d2435837","after":"56df7158a3e1b7ff9dccf3e20d1581ab3ac01ebb","ref":"refs/heads/dev","pushedAt":"2024-09-21T08:37:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Mairon1206","name":"Mairon","path":"/Mairon1206","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153294662?s=80&v=4"},"commit":{"message":"fix: crash if tray cannot start","shortMessageHtmlLink":"fix: crash if tray cannot start"}},{"before":"557725fbe4e568ae38e3a022f6e18325bc1f3ca2","after":"02c151b378c0aac1a80c73c88628b701d2435837","ref":"refs/heads/dev","pushedAt":"2024-09-21T08:26:37.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Mairon1206","name":"Mairon","path":"/Mairon1206","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153294662?s=80&v=4"},"commit":{"message":"feat: account config","shortMessageHtmlLink":"feat: account config"}},{"before":"7adafbbcd7cf2b446e307288c96da3efbc11cfc4","after":"557725fbe4e568ae38e3a022f6e18325bc1f3ca2","ref":"refs/heads/dev","pushedAt":"2024-09-21T05:41:59.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"feat(ui): slide load logic","shortMessageHtmlLink":"feat(ui): slide load logic"}},{"before":"eac08643e520fc0234f2f98a647174f291bf684e","after":"7adafbbcd7cf2b446e307288c96da3efbc11cfc4","ref":"refs/heads/dev","pushedAt":"2024-09-21T05:35:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"fix(ui): slide load logic","shortMessageHtmlLink":"fix(ui): slide load logic"}},{"before":"5874b4c5103421cab71a875980f10c4e98b6cd15","after":"eac08643e520fc0234f2f98a647174f291bf684e","ref":"refs/heads/dev","pushedAt":"2024-09-20T15:27:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Mairon1206","name":"Mairon","path":"/Mairon1206","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153294662?s=80&v=4"},"commit":{"message":"feat(ui): carousel in DiscoveryPage","shortMessageHtmlLink":"feat(ui): carousel in DiscoveryPage"}},{"before":"05f930894615dace7cfc177246c084768135661e","after":"5874b4c5103421cab71a875980f10c4e98b6cd15","ref":"refs/heads/dev","pushedAt":"2024-09-20T05:27:21.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"docs(readme): add build option instruction","shortMessageHtmlLink":"docs(readme): add build option instruction"}},{"before":"d5c1b21fe06af52a9dc33d804011f5ff6a1b9557","after":"05f930894615dace7cfc177246c084768135661e","ref":"refs/heads/dev","pushedAt":"2024-09-20T04:07:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"ci: remove debug pkg","shortMessageHtmlLink":"ci: remove debug pkg"}},{"before":"5921a1c0c7cceecaba3405f2b89f8382385cf4bc","after":"d5c1b21fe06af52a9dc33d804011f5ff6a1b9557","ref":"refs/heads/dev","pushedAt":"2024-09-20T03:41:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"feat(ui): beautify some components","shortMessageHtmlLink":"feat(ui): beautify some components"}},{"before":"a0c5f1aec408889f226a659adce06b00ee01ba8f","after":null,"ref":"refs/tags/0.1.0","pushedAt":"2024-09-20T03:37:05.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"}},{"before":"5921a1c0c7cceecaba3405f2b89f8382385cf4bc","after":"d5c1b21fe06af52a9dc33d804011f5ff6a1b9557","ref":"refs/heads/main","pushedAt":"2024-09-20T03:35:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"feat(ui): beautify some components","shortMessageHtmlLink":"feat(ui): beautify some components"}},{"before":"e2c2e243bffa5b6e7438b10f40fa92c7d1120657","after":"5921a1c0c7cceecaba3405f2b89f8382385cf4bc","ref":"refs/heads/dev","pushedAt":"2024-09-20T02:50:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Mairon1206","name":"Mairon","path":"/Mairon1206","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153294662?s=80&v=4"},"commit":{"message":"ci: create release automatically","shortMessageHtmlLink":"ci: create release automatically"}},{"before":"dc8ece006538f21a52a5713e692a56a85ead8026","after":"5921a1c0c7cceecaba3405f2b89f8382385cf4bc","ref":"refs/heads/main","pushedAt":"2024-09-19T16:38:18.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ArcticLampyrid","name":"ArcticLampyrid","path":"/ArcticLampyrid","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9017609?s=80&v=4"},"commit":{"message":"ci: create release automatically","shortMessageHtmlLink":"ci: create release automatically"}},{"before":"dc8ece006538f21a52a5713e692a56a85ead8026","after":null,"ref":"refs/tags/v0.2.0","pushedAt":"2024-09-19T16:35:34.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ArcticLampyrid","name":"ArcticLampyrid","path":"/ArcticLampyrid","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9017609?s=80&v=4"}},{"before":"e2c2e243bffa5b6e7438b10f40fa92c7d1120657","after":"dc8ece006538f21a52a5713e692a56a85ead8026","ref":"refs/heads/main","pushedAt":"2024-09-19T16:33:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ArcticLampyrid","name":"ArcticLampyrid","path":"/ArcticLampyrid","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9017609?s=80&v=4"},"commit":{"message":"ci: create release automatically","shortMessageHtmlLink":"ci: create release automatically"}},{"before":"4d98c8c98db7d985354eb4503a2c6acf0e8c8d29","after":"ce4a2495d1ca609be509b7dccab8eb2ffae07bd5","ref":"refs/heads/feat/ui/my_event-page","pushedAt":"2024-09-19T15:32:23.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cEvolve05","name":"cEvolve05","path":"/cEvolve05","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41291879?s=80&v=4"},"commit":{"message":"add callback and ui","shortMessageHtmlLink":"add callback and ui"}},{"before":"27371e5eb90fb1f4a94a23710d5af992c6363fa4","after":"4d98c8c98db7d985354eb4503a2c6acf0e8c8d29","ref":"refs/heads/feat/ui/my_event-page","pushedAt":"2024-09-19T15:23:14.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cEvolve05","name":"cEvolve05","path":"/cEvolve05","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41291879?s=80&v=4"},"commit":{"message":"add callback and ui","shortMessageHtmlLink":"add callback and ui"}},{"before":"76352c52281a723497f8b28ebbfca8f97061efbc","after":"e2c2e243bffa5b6e7438b10f40fa92c7d1120657","ref":"refs/heads/main","pushedAt":"2024-09-19T15:02:29.000Z","pushType":"push","commitsCount":26,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"feat(ui): implement discovery page (#24)\n\n* feat(ui): complete main layout, add carousel.\r\n\r\n* feat(ui): add layout to \"current activity\"\r\n\r\n* feat(executor): different modes of `asyncExecute` using a timer\r\n\r\nOne more parameter of `asyncExecute` when using a timer: TimerFlag flag\r\nTimerFlag::Once: perform the operation only once\r\nTimerFlag::Periodic: perform the operation periodically\r\nImplementation of `asyncExecuteByTimer` optimized\r\n`io_context` exposed for more flexibility\r\n\r\n* feat(executor): add execution strategy\r\n\r\n* feat: add view data to `ViewManager` (#17)\r\n\r\n* fix: added assert to `UiBridge::call`\r\n\r\n* refactor: added included header in `BasicView` for convenience\r\n\r\n* feat: added view data to `ViewManager`\r\n\r\n* feat(net): github api (#28)\r\n\r\n* feat:completed github api interface\r\n\r\n* style:Change code style to match clang-format\r\n\r\n---------\r\n\r\nCo-authored-by: Serein <118594118+Serein207@users.noreply.github.com>\r\n\r\n* docs(executor): optimize flag description\r\n\r\n* feat(net): evento api (#26)\r\n\r\n* feat:Preliminarily completed the implementation of the evento api interface\r\n\r\n* fix(net): Use `std::string` for all non-string arguments to meet the interface requirements of the URL library to resolve the compilation error.\r\n\r\n* fix(net)!: fix the false return type of refreshAccessToken and change the return type from void to bool for some function\r\n\r\n* fix(net): Fixed incorrect behavior in refreshAccessToken function.\r\n\r\n* refactor(net): Modified the return value settings of some functions to make the overall behavior more in line with server interface expectations\r\n\r\n* feat(net)!: Modified some function interfaces and implementations to align with the new backend interface specifications\r\n\r\n* feat(net): Implemented department-related functions.\r\n\r\n* fix(net): fix JSON parsing problem\r\n\r\n* feat(net)!: Changed the return value types of some functions to avoid passing arguments by reference.\r\n\r\nAdditionally, renamed some incorrectly named variables in EventEntity to conform to backend interface specifications.\r\n\r\n* style(net): Modified code style to meet requirements.\r\n\r\n* feat(net): Add getEventList function\r\n\r\n* feat(net)!: Deprecated some functions and change the name of some variables and functions.\r\n\r\n* feat(net)!: Primarily enhanced the security of certain functions.\r\n\r\nAdditionally changed the definition locations of some variables and optimized the parameter names of some functions.\r\n\r\n* feat(net): Initialize `std::optional` as `std::nullopt` in getUserFeedback\r\n\r\n* feat(ui): add scrollview to layout\r\n\r\n* feat/ui/discovery-page: add scarousel to scroollview\r\n\r\n* feat/ui/DiscoveryPage: accomplish dynamic grid\r\nusing double for loop in VerticalLayout, but font not set yet\r\n\r\n* feat(ui): ui core multiple update (#31)\r\n\r\n* feat(ui): added state layer\r\n* feat(ui): modify overlay, improve menu and login\r\n* feat(ui): improve `MessageManager`\r\n* feat(ui): added developer shortcut to skip `LoginOverlay`\r\n\r\nPress Ctrl + Shift + Right click on shadow of `LoginOverlay` to skip login\r\n\r\n* feat: set default slint style to material\r\n\r\n* fix(ui): fix toast and login shadow (#33)\r\n\r\n* fix(ui): make login shadow opaque\r\n* fix(ui): make toast higher than overlay\r\n\r\n* feat: slint experimental feature\r\n\r\n* feat(ui): initialize sur-ui default theme\r\n\r\n* fix: crash showing message when another message on screen\r\n\r\n* feat(ui): optimize menu overlay\r\n\r\n* fix: open url failed on macos\r\n\r\n* build(deps): bump 3rdpart/sast-link-cxx-sdk from `9e2e743` to `2f62634` (#34)\r\n\r\nBumps [3rdpart/sast-link-cxx-sdk](https://github.com/Serein207/sast-link-cxx-sdk) from `9e2e743` to `2f62634`.\r\n- [Release notes](https://github.com/Serein207/sast-link-cxx-sdk/releases)\r\n- [Commits](https://github.com/Serein207/sast-link-cxx-sdk/compare/9e2e743c2b5f42109382aa05cca93f3b318d5112...2f62634694afb0b2d9a4b13b5c179d48fd955bc9)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: 3rdpart/sast-link-cxx-sdk\r\n dependency-type: direct:production\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\r\n\r\n* fix: make `openBrowser` inline, added dev shortcut\r\n\r\nCtrl+Shift+Left click for skip login\r\nCtrl+Shift+Right click for fake login (not trigger onLogin)\r\n\r\n* fix: menu expand animation lost\r\n\r\n* chore(cmake): remove useless variable\r\n\r\n* build(deps): bump 3rdpart/sast-link-cxx-sdk from `9e2e743` to `2f62634` (#35)\r\n\r\nBumps [3rdpart/sast-link-cxx-sdk](https://github.com/Serein207/sast-link-cxx-sdk) from `9e2e743` to `2f62634`.\r\n- [Release notes](https://github.com/Serein207/sast-link-cxx-sdk/releases)\r\n- [Commits](https://github.com/Serein207/sast-link-cxx-sdk/compare/9e2e743c2b5f42109382aa05cca93f3b318d5112...2f62634694afb0b2d9a4b13b5c179d48fd955bc9)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: 3rdpart/sast-link-cxx-sdk\r\n dependency-type: direct:production\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\r\nCo-authored-by: Serein <118594118+Serein207@users.noreply.github.com>\r\n\r\n* feat(ui): finish setting page (#21)\r\n\r\n* feat:some basic laying\r\n\r\n* feat(ui): basic laying on the page\r\n\r\n* ui laying primary draft\r\n\r\n* feat(ui): callbacks and root\r\n\r\n* attempt to fill in .cc and .slint\r\n\r\n* callbacks fiied\r\n\r\n* feat: setting page\r\n\r\n* feat: change theme when app start\r\n\r\n* chore: clean up code\r\n\r\n* feat(ui): add scroll view in setting page\r\n\r\n---------\r\n\r\nCo-authored-by: Serein <2075337935@qq.com>\r\n\r\n* feat(ui): `LoadingButton` component (#37)\r\n\r\n* feat: basic `LoadingButton`\r\n* feat: add custom animate\r\n* feat: export component in index, clean up code\r\n\r\n* refactor!: drop icon color auto switch function (#42)\r\n\r\n* refactor!: drop icon color auto switch\r\n* fix: correct existing `Image`\r\n\r\nreasons:\r\n- reduce resource file number and executable size when embed resource\r\n- color not exactly match environment (not the same color of text)\r\n- auto switch require duplicate files with little difference, and not fit into some special requirements perfectly\r\n- colorize support animation\r\n\r\nHow to migrate:\r\n\r\n```\r\nImage {\r\n source: Token.image.icon.me;\r\n colorize: Token.color.on-surface; // should be added to all Image with source Token.image.icon.*\r\n}\r\n```\r\n\r\nFollowing icon keep previous behavior.\r\n\r\n- evento (bad support for `colorize`)\r\n\r\nBREAKING CHANGE: remove support for icon color auto-switch, please use `colorize` property of `Image` instead.\r\n\r\n* feat(ui): event card (#38)\r\n\r\nfeat(ui): `Card`, `EventCard` , `EventCardGroup` and coversion function in `Convert.hh`\r\n\r\n* feat(ui): improve view data logic\r\n\r\nuse std::array instead for convenience\r\n\r\n* feat(assets): remove useless images\r\n\r\n* feat(card): optimize animation\r\n\r\n* feat(card): optimize event card\r\n\r\n* feat(font): increase font size\r\n\r\n* feat(ui)!: add md3 button (#46)\r\n\r\n* feat(ui): added scrim, shadow color and elevation\r\n* feat(ui): improve menu shadow\r\n* feat(ui): improve state layer\r\n* feat(ui): improve `LoadingAnimation`\r\n* feat(ui): added md3 button\r\n\r\nBREAKING CHANGE: 目前 LoadingButton 已被删除,请使用 LoadingAnimation 和 Button 的组合\r\n\r\n* feat(ui): complete main layout, add carousel.\r\n\r\n* feat(ui): add scrollview to layout\r\n\r\n* feat/ui/DiscoveryPage: accomplish dynamic grid\r\nusing double for loop in VerticalLayout, but font not set yet\r\n\r\n* feat/ui/discovery-page: use component eventcardgroup\r\n\r\n* feat/ui/discovery-page: pull before push to remote\r\n\r\n* feat(ui): fix compile error and conflicts\r\n\r\n* feat/ui/discovery-page: modify component height\r\n\r\n* feat/ui/discovery-page: finish page display\r\n\r\n* feat/ui/discovery-page: seperate current and newest event\r\n\r\n* feat/ui/discovery-page: delete dead code\r\n\r\n* fix: correct about page link color\r\n\r\n* refactor: new login overlay\r\n\r\n* docs(readme): change to english\r\n\r\n* feat(cache): clear disk cache\r\n\r\n* fix(net)!: potential lifetime problem & modify api\r\n\r\n* perf(net): change buffer to local variable\r\n\r\n* fix(ui): load image logic\r\n\r\n* feat(ui): clean up code\r\n\r\n* fix\r\n\r\n* ci: limit thread number of build\r\n\r\n* build: replace platform macro\r\n\r\n* fix: remove redundant code due to merge\r\n\r\n* feat: controller logic\r\n\r\n* fix: miss header\r\n\r\n* perf: condition render info text\r\n\r\n---------\r\n\r\nSigned-off-by: dependabot[bot] \r\nCo-authored-by: Mairon <3043462073@qq.com>\r\nCo-authored-by: Serein <2075337935@qq.com>\r\nCo-authored-by: cEvolve05 \r\nCo-authored-by: shuzhuxvchuang <149923641+afkdsghk211331@users.noreply.github.com>\r\nCo-authored-by: Serein <118594118+Serein207@users.noreply.github.com>\r\nCo-authored-by: ZhiweiCOfficial <48409459+schoolbag123@users.noreply.github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\r\nCo-authored-by: DTPA101 <154043471+DTPA101@users.noreply.github.com>\r\nCo-authored-by: Mairon <153294662+Mairon1206@users.noreply.github.com>","shortMessageHtmlLink":"feat(ui): implement discovery page (#24)"}},{"before":"c393f26de031bca8e6f239c634e2fc2928993c5d","after":null,"ref":"refs/heads/feat/ui/discovery-page","pushedAt":"2024-09-19T14:55:11.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"}},{"before":"9038092721bbe373fa76a68ab26d361eb9869863","after":"e2c2e243bffa5b6e7438b10f40fa92c7d1120657","ref":"refs/heads/dev","pushedAt":"2024-09-19T14:55:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"feat(ui): implement discovery page (#24)\n\n* feat(ui): complete main layout, add carousel.\r\n\r\n* feat(ui): add layout to \"current activity\"\r\n\r\n* feat(executor): different modes of `asyncExecute` using a timer\r\n\r\nOne more parameter of `asyncExecute` when using a timer: TimerFlag flag\r\nTimerFlag::Once: perform the operation only once\r\nTimerFlag::Periodic: perform the operation periodically\r\nImplementation of `asyncExecuteByTimer` optimized\r\n`io_context` exposed for more flexibility\r\n\r\n* feat(executor): add execution strategy\r\n\r\n* feat: add view data to `ViewManager` (#17)\r\n\r\n* fix: added assert to `UiBridge::call`\r\n\r\n* refactor: added included header in `BasicView` for convenience\r\n\r\n* feat: added view data to `ViewManager`\r\n\r\n* feat(net): github api (#28)\r\n\r\n* feat:completed github api interface\r\n\r\n* style:Change code style to match clang-format\r\n\r\n---------\r\n\r\nCo-authored-by: Serein <118594118+Serein207@users.noreply.github.com>\r\n\r\n* docs(executor): optimize flag description\r\n\r\n* feat(net): evento api (#26)\r\n\r\n* feat:Preliminarily completed the implementation of the evento api interface\r\n\r\n* fix(net): Use `std::string` for all non-string arguments to meet the interface requirements of the URL library to resolve the compilation error.\r\n\r\n* fix(net)!: fix the false return type of refreshAccessToken and change the return type from void to bool for some function\r\n\r\n* fix(net): Fixed incorrect behavior in refreshAccessToken function.\r\n\r\n* refactor(net): Modified the return value settings of some functions to make the overall behavior more in line with server interface expectations\r\n\r\n* feat(net)!: Modified some function interfaces and implementations to align with the new backend interface specifications\r\n\r\n* feat(net): Implemented department-related functions.\r\n\r\n* fix(net): fix JSON parsing problem\r\n\r\n* feat(net)!: Changed the return value types of some functions to avoid passing arguments by reference.\r\n\r\nAdditionally, renamed some incorrectly named variables in EventEntity to conform to backend interface specifications.\r\n\r\n* style(net): Modified code style to meet requirements.\r\n\r\n* feat(net): Add getEventList function\r\n\r\n* feat(net)!: Deprecated some functions and change the name of some variables and functions.\r\n\r\n* feat(net)!: Primarily enhanced the security of certain functions.\r\n\r\nAdditionally changed the definition locations of some variables and optimized the parameter names of some functions.\r\n\r\n* feat(net): Initialize `std::optional` as `std::nullopt` in getUserFeedback\r\n\r\n* feat(ui): add scrollview to layout\r\n\r\n* feat/ui/discovery-page: add scarousel to scroollview\r\n\r\n* feat/ui/DiscoveryPage: accomplish dynamic grid\r\nusing double for loop in VerticalLayout, but font not set yet\r\n\r\n* feat(ui): ui core multiple update (#31)\r\n\r\n* feat(ui): added state layer\r\n* feat(ui): modify overlay, improve menu and login\r\n* feat(ui): improve `MessageManager`\r\n* feat(ui): added developer shortcut to skip `LoginOverlay`\r\n\r\nPress Ctrl + Shift + Right click on shadow of `LoginOverlay` to skip login\r\n\r\n* feat: set default slint style to material\r\n\r\n* fix(ui): fix toast and login shadow (#33)\r\n\r\n* fix(ui): make login shadow opaque\r\n* fix(ui): make toast higher than overlay\r\n\r\n* feat: slint experimental feature\r\n\r\n* feat(ui): initialize sur-ui default theme\r\n\r\n* fix: crash showing message when another message on screen\r\n\r\n* feat(ui): optimize menu overlay\r\n\r\n* fix: open url failed on macos\r\n\r\n* build(deps): bump 3rdpart/sast-link-cxx-sdk from `9e2e743` to `2f62634` (#34)\r\n\r\nBumps [3rdpart/sast-link-cxx-sdk](https://github.com/Serein207/sast-link-cxx-sdk) from `9e2e743` to `2f62634`.\r\n- [Release notes](https://github.com/Serein207/sast-link-cxx-sdk/releases)\r\n- [Commits](https://github.com/Serein207/sast-link-cxx-sdk/compare/9e2e743c2b5f42109382aa05cca93f3b318d5112...2f62634694afb0b2d9a4b13b5c179d48fd955bc9)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: 3rdpart/sast-link-cxx-sdk\r\n dependency-type: direct:production\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\r\n\r\n* fix: make `openBrowser` inline, added dev shortcut\r\n\r\nCtrl+Shift+Left click for skip login\r\nCtrl+Shift+Right click for fake login (not trigger onLogin)\r\n\r\n* fix: menu expand animation lost\r\n\r\n* chore(cmake): remove useless variable\r\n\r\n* build(deps): bump 3rdpart/sast-link-cxx-sdk from `9e2e743` to `2f62634` (#35)\r\n\r\nBumps [3rdpart/sast-link-cxx-sdk](https://github.com/Serein207/sast-link-cxx-sdk) from `9e2e743` to `2f62634`.\r\n- [Release notes](https://github.com/Serein207/sast-link-cxx-sdk/releases)\r\n- [Commits](https://github.com/Serein207/sast-link-cxx-sdk/compare/9e2e743c2b5f42109382aa05cca93f3b318d5112...2f62634694afb0b2d9a4b13b5c179d48fd955bc9)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: 3rdpart/sast-link-cxx-sdk\r\n dependency-type: direct:production\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\r\nCo-authored-by: Serein <118594118+Serein207@users.noreply.github.com>\r\n\r\n* feat(ui): finish setting page (#21)\r\n\r\n* feat:some basic laying\r\n\r\n* feat(ui): basic laying on the page\r\n\r\n* ui laying primary draft\r\n\r\n* feat(ui): callbacks and root\r\n\r\n* attempt to fill in .cc and .slint\r\n\r\n* callbacks fiied\r\n\r\n* feat: setting page\r\n\r\n* feat: change theme when app start\r\n\r\n* chore: clean up code\r\n\r\n* feat(ui): add scroll view in setting page\r\n\r\n---------\r\n\r\nCo-authored-by: Serein <2075337935@qq.com>\r\n\r\n* feat(ui): `LoadingButton` component (#37)\r\n\r\n* feat: basic `LoadingButton`\r\n* feat: add custom animate\r\n* feat: export component in index, clean up code\r\n\r\n* refactor!: drop icon color auto switch function (#42)\r\n\r\n* refactor!: drop icon color auto switch\r\n* fix: correct existing `Image`\r\n\r\nreasons:\r\n- reduce resource file number and executable size when embed resource\r\n- color not exactly match environment (not the same color of text)\r\n- auto switch require duplicate files with little difference, and not fit into some special requirements perfectly\r\n- colorize support animation\r\n\r\nHow to migrate:\r\n\r\n```\r\nImage {\r\n source: Token.image.icon.me;\r\n colorize: Token.color.on-surface; // should be added to all Image with source Token.image.icon.*\r\n}\r\n```\r\n\r\nFollowing icon keep previous behavior.\r\n\r\n- evento (bad support for `colorize`)\r\n\r\nBREAKING CHANGE: remove support for icon color auto-switch, please use `colorize` property of `Image` instead.\r\n\r\n* feat(ui): event card (#38)\r\n\r\nfeat(ui): `Card`, `EventCard` , `EventCardGroup` and coversion function in `Convert.hh`\r\n\r\n* feat(ui): improve view data logic\r\n\r\nuse std::array instead for convenience\r\n\r\n* feat(assets): remove useless images\r\n\r\n* feat(card): optimize animation\r\n\r\n* feat(card): optimize event card\r\n\r\n* feat(font): increase font size\r\n\r\n* feat(ui)!: add md3 button (#46)\r\n\r\n* feat(ui): added scrim, shadow color and elevation\r\n* feat(ui): improve menu shadow\r\n* feat(ui): improve state layer\r\n* feat(ui): improve `LoadingAnimation`\r\n* feat(ui): added md3 button\r\n\r\nBREAKING CHANGE: 目前 LoadingButton 已被删除,请使用 LoadingAnimation 和 Button 的组合\r\n\r\n* feat(ui): complete main layout, add carousel.\r\n\r\n* feat(ui): add scrollview to layout\r\n\r\n* feat/ui/DiscoveryPage: accomplish dynamic grid\r\nusing double for loop in VerticalLayout, but font not set yet\r\n\r\n* feat/ui/discovery-page: use component eventcardgroup\r\n\r\n* feat/ui/discovery-page: pull before push to remote\r\n\r\n* feat(ui): fix compile error and conflicts\r\n\r\n* feat/ui/discovery-page: modify component height\r\n\r\n* feat/ui/discovery-page: finish page display\r\n\r\n* feat/ui/discovery-page: seperate current and newest event\r\n\r\n* feat/ui/discovery-page: delete dead code\r\n\r\n* fix: correct about page link color\r\n\r\n* refactor: new login overlay\r\n\r\n* docs(readme): change to english\r\n\r\n* feat(cache): clear disk cache\r\n\r\n* fix(net)!: potential lifetime problem & modify api\r\n\r\n* perf(net): change buffer to local variable\r\n\r\n* fix(ui): load image logic\r\n\r\n* feat(ui): clean up code\r\n\r\n* fix\r\n\r\n* ci: limit thread number of build\r\n\r\n* build: replace platform macro\r\n\r\n* fix: remove redundant code due to merge\r\n\r\n* feat: controller logic\r\n\r\n* fix: miss header\r\n\r\n* perf: condition render info text\r\n\r\n---------\r\n\r\nSigned-off-by: dependabot[bot] \r\nCo-authored-by: Mairon <3043462073@qq.com>\r\nCo-authored-by: Serein <2075337935@qq.com>\r\nCo-authored-by: cEvolve05 \r\nCo-authored-by: shuzhuxvchuang <149923641+afkdsghk211331@users.noreply.github.com>\r\nCo-authored-by: Serein <118594118+Serein207@users.noreply.github.com>\r\nCo-authored-by: ZhiweiCOfficial <48409459+schoolbag123@users.noreply.github.com>\r\nCo-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\r\nCo-authored-by: DTPA101 <154043471+DTPA101@users.noreply.github.com>\r\nCo-authored-by: Mairon <153294662+Mairon1206@users.noreply.github.com>","shortMessageHtmlLink":"feat(ui): implement discovery page (#24)"}},{"before":"363526115c74bddcf16a2ae8f1b9e1c5924bcd3e","after":"c393f26de031bca8e6f239c634e2fc2928993c5d","ref":"refs/heads/feat/ui/discovery-page","pushedAt":"2024-09-19T14:31:35.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"perf: condition render info text","shortMessageHtmlLink":"perf: condition render info text"}},{"before":"c422df4108aa4262fb260616d1e36e37a4ab450f","after":"363526115c74bddcf16a2ae8f1b9e1c5924bcd3e","ref":"refs/heads/feat/ui/discovery-page","pushedAt":"2024-09-19T10:00:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Mairon1206","name":"Mairon","path":"/Mairon1206","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153294662?s=80&v=4"},"commit":{"message":"feat: controller logic","shortMessageHtmlLink":"feat: controller logic"}},{"before":"7ea27b4c898d0c8039edd1a9a0c4a1bb2cdb1ebc","after":"c422df4108aa4262fb260616d1e36e37a4ab450f","ref":"refs/heads/feat/ui/discovery-page","pushedAt":"2024-09-19T04:34:59.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"Merge branch 'dev' into feat/ui/discovery-page","shortMessageHtmlLink":"Merge branch 'dev' into feat/ui/discovery-page"}},{"before":"f98b38b28bef345321a194e5c9dbd2aed25a533f","after":"9038092721bbe373fa76a68ab26d361eb9869863","ref":"refs/heads/dev","pushedAt":"2024-09-19T04:34:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"build: replace platform macro","shortMessageHtmlLink":"build: replace platform macro"}},{"before":"ca2a8d3f3ba38aef5089970d283eda95f701f824","after":"7ea27b4c898d0c8039edd1a9a0c4a1bb2cdb1ebc","ref":"refs/heads/feat/ui/discovery-page","pushedAt":"2024-09-19T04:29:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"fix: remove redundant code due to merge","shortMessageHtmlLink":"fix: remove redundant code due to merge"}},{"before":"9d932bd0ac76c78b39b2ccad3482ab8034730ced","after":"ca2a8d3f3ba38aef5089970d283eda95f701f824","ref":"refs/heads/feat/ui/discovery-page","pushedAt":"2024-09-19T04:24:35.000Z","pushType":"push","commitsCount":16,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"Merge branch 'dev' into feat/ui/discovery-page","shortMessageHtmlLink":"Merge branch 'dev' into feat/ui/discovery-page"}},{"before":"ff2910006959aa7e01acf89dece74ea972f546e0","after":"f98b38b28bef345321a194e5c9dbd2aed25a533f","ref":"refs/heads/dev","pushedAt":"2024-09-19T04:10:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"build: replace platform macro","shortMessageHtmlLink":"build: replace platform macro"}},{"before":"7886726affe4470a504f29bfce64456aaaa19226","after":"ff2910006959aa7e01acf89dece74ea972f546e0","ref":"refs/heads/dev","pushedAt":"2024-09-19T03:49:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"ci: limit thread number of build","shortMessageHtmlLink":"ci: limit thread number of build"}},{"before":"e9712b2fc1840f93128ba05e2d6cbf9c8c033146","after":"7886726affe4470a504f29bfce64456aaaa19226","ref":"refs/heads/dev","pushedAt":"2024-09-19T03:43:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Serein207","name":"Serein","path":"/Serein207","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/118594118?s=80&v=4"},"commit":{"message":"ci: limit thread number of build","shortMessageHtmlLink":"ci: limit thread number of build"}},{"before":"8197ab7d9f277cc8720789cf1391177c091d6cfe","after":"e9712b2fc1840f93128ba05e2d6cbf9c8c033146","ref":"refs/heads/dev","pushedAt":"2024-09-18T13:21:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"cEvolve05","name":"cEvolve05","path":"/cEvolve05","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/41291879?s=80&v=4"},"commit":{"message":"fix(net): reference hanging","shortMessageHtmlLink":"fix(net): reference hanging"}},{"before":"05e3f8bbcdf07511e018c0ea99f9e6cc48609f12","after":"9d932bd0ac76c78b39b2ccad3482ab8034730ced","ref":"refs/heads/feat/ui/discovery-page","pushedAt":"2024-09-18T09:23:21.000Z","pushType":"push","commitsCount":75,"pusher":{"login":"Mairon1206","name":"Mairon","path":"/Mairon1206","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/153294662?s=80&v=4"},"commit":{"message":"fix","shortMessageHtmlLink":"fix"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMVQwODozNzowMy4wMDAwMDBazwAAAAS8nPwE","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0yMVQwODozNzowMy4wMDAwMDBazwAAAAS8nPwE","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOS0xOFQwOToyMzoyMS4wMDAwMDBazwAAAAS5eCOO"}},"title":"Activity · NJUPT-SAST/sast-evento"}