{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":124456340,"defaultBranch":"master","name":"d1-graphics-tool","ownerLogin":"diasurgical","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-03-08T22:35:12.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/40645014?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1704723627.0","currentOid":""},"activityList":{"items":[{"before":"166d2057e4f87505862510b0a82b78c412fb3437","after":"3ca9b794edb339e7a0c4ffa0474b031cf566be30","ref":"refs/heads/master","pushedAt":"2024-02-06T02:13:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Undostack: Fix segfault when trying to fetch macro on -1 index\n\nCurrently, if user adds a command to the undostack, and then undos it,\nand then adds another command - this causes a segfault while fetching\nmacro ID from command on current undoPos. Current undo position pointer\nof undostack is being moved to -1 if user undos every possible command\non the stack. Everytime user adds a new command, eraseRedundantCmds()\nmethod is being called, because all commands that are in \"undo\" state\nneed to be cleared. So the solution to that is to simply clear every\nsingle macro and command while erasing redundant commands, if the\ncurrent undo position is -1 - this basically means that every single\ncommand/macro is in undo state, so we clear all of them.","shortMessageHtmlLink":"Undostack: Fix segfault when trying to fetch macro on -1 index"}},{"before":"431cae54a784a80130cef17343e326dfd81c6eff","after":"166d2057e4f87505862510b0a82b78c412fb3437","ref":"refs/heads/master","pushedAt":"2024-02-03T23:44:34.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Views: Cleanup LevelCelView a bit","shortMessageHtmlLink":"Views: Cleanup LevelCelView a bit"}},{"before":"fac5ec660f51d934f9088025b17597c176b954ab","after":null,"ref":"refs/heads/AJenbo-patch-1","pushedAt":"2024-01-08T14:20:27.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"}},{"before":"fc4e13fef6b63063c1818772d1b6447e1ebe4005","after":"431cae54a784a80130cef17343e326dfd81c6eff","ref":"refs/heads/master","pushedAt":"2024-01-08T14:20:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Update CONTRIBUTING.md","shortMessageHtmlLink":"Update CONTRIBUTING.md"}},{"before":null,"after":"fac5ec660f51d934f9088025b17597c176b954ab","ref":"refs/heads/AJenbo-patch-1","pushedAt":"2024-01-08T14:20:13.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Update CONTRIBUTING.md","shortMessageHtmlLink":"Update CONTRIBUTING.md"}},{"before":"4855b36c7925f132ede08d4dd16f85cd53bf7e88","after":"fc4e13fef6b63063c1818772d1b6447e1ebe4005","ref":"refs/heads/master","pushedAt":"2024-01-08T14:14:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Documentation: Add contributing guidelines\n\nThis patch adds contributing guidelines to the project, with guidelines\non creating PRs, issues, link to the discord, and behavior etiquette.","shortMessageHtmlLink":"Documentation: Add contributing guidelines"}},{"before":"228a446edadf4eede16408e28d6fb23255c260d2","after":"4855b36c7925f132ede08d4dd16f85cd53bf7e88","ref":"refs/heads/master","pushedAt":"2024-01-08T13:56:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Documentation: Add discord badge to README\n\nThis patch adds discord badge to DevilutionX/diasurgical discord to the\nREADME.","shortMessageHtmlLink":"Documentation: Add discord badge to README"}},{"before":"bb49dbb9c5784b7758a924bde14b4c9fdd674737","after":"228a446edadf4eede16408e28d6fb23255c260d2","ref":"refs/heads/master","pushedAt":"2024-01-08T11:47:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Documentation: Add code of conduct\n\nThis commit adds COC to the project. This is a copy pasted file from\nDevilutionX repo, since this repository is being maintained by the same\ncommunity.","shortMessageHtmlLink":"Documentation: Add code of conduct"}},{"before":"aa4264bb4c2f24d641be6d33d811d59852fb8aa3","after":"bb49dbb9c5784b7758a924bde14b4c9fdd674737","ref":"refs/heads/master","pushedAt":"2023-12-04T21:40:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Everywhere: Move source files to separate subdirs\n\nCurrently all of the source files are located in src/ subdirectory,\nalthough it gets increasingly harder and harder to find anything in this\npile.\n\nThis patch moves those files to separate subdirectories that are named\naccordingly to the theme that files in them represent, for example -\nsubdirectory \"undostack\" will hold undostack and all commands related to\nthe stack.\n\nThere might be code in some places, for example in palettewidget.cpp\nthat has \"undostack\" command inside of it, but moving that will come in\na separate refactor PR in the future.","shortMessageHtmlLink":"Everywhere: Move source files to separate subdirs"}},{"before":"cb9590b16d8e375e8832a2c2032fd8dff29f21d8","after":"aa4264bb4c2f24d641be6d33d811d59852fb8aa3","ref":"refs/heads/master","pushedAt":"2023-12-02T18:39:58.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"StephenCWills","name":"Stephen C. Wills","path":"/StephenCWills","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9203145?s=80&v=4"},"commit":{"message":"Command: Add documentation to existing methods\n\nAdded documentation to existing methods in Command class.","shortMessageHtmlLink":"Command: Add documentation to existing methods"}},{"before":"817c4b93095758e9145405ebbb22401aa2e2c6cf","after":"cb9590b16d8e375e8832a2c2032fd8dff29f21d8","ref":"refs/heads/master","pushedAt":"2023-11-30T05:04:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"QActions: Rename QActions of Add to Append (#136)\n\n* MainWindow: Rename QActions of Add to Append \r\n\r\nThis patch renames all QActions instances in MainWindow from Add Frame/Tile/Megatile to\r\nAppend Frame/Tile/Megatile, this way it's more clearer for the user, since \"Insert\" option is\r\nalready \"adding\" images, thus \"Add\" right now seems to be too ambiguous.\r\n\r\n* CelView: Rename QActions of Add Frame to Append Frame\r\n\r\nThis patch renames all QActions instances in CelView from Add Frame to Ap\r\nFrame, this way it's more clearer for the user, since \"Insert\" option is\r\nalready \"adding\" images, thus \"Add\" right now seems to be too ambiguous.\r\n\r\n* LevelCelView: Rename QActions of Add to Append \r\n\r\nThis patch renames all QActions instances in LevelCelView from Add Frame/Tile/MegaTile\r\nto Append Frame/Tile/MegaTile, this way it's more clearer for the user, since \"Insert\" option is\r\nalready \"adding\" images, thus \"Add\" right now seems to be too ambiguous.","shortMessageHtmlLink":"QActions: Rename QActions of Add <X> to Append <X> (#136)"}},{"before":"6d3e680b9412c2c2e50e61ddc03b23c807a0be6b","after":"817c4b93095758e9145405ebbb22401aa2e2c6cf","ref":"refs/heads/master","pushedAt":"2023-11-19T21:27:35.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"StephenCWills","name":"Stephen C. Wills","path":"/StephenCWills","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/9203145?s=80&v=4"},"commit":{"message":"FrameCmds: Make replace frame option to be undoable/redoable\n\nThis commit makes \"replace frame\" option to be undoable, it allows to\nreplace frame and then undo or redo the same action.","shortMessageHtmlLink":"FrameCmds: Make replace frame option to be undoable/redoable"}},{"before":"8de1d4c3e5ec65fc967b73f10f420bd0d82a7da7","after":"6d3e680b9412c2c2e50e61ddc03b23c807a0be6b","ref":"refs/heads/master","pushedAt":"2023-11-15T21:53:46.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"MenuEdit: Do not use autoconnection mechanism for slots used in QMenu (#132)\n\n* MainWindow: Do not use autoconnection mechanism for slots used in QMenu\r\n\r\nCurrently whenever UI gets loaded and we try to connect a slot with a\r\nsignal emitted in QAction, for example in appending frame, inserting it,\r\netc. we get warnings like these:\r\n\r\nqt.core.qmetaobject.connectslotsbyname: QMetaObject::connectSlotsByName: No matching signal for on_actionAdd_Frame_triggered()\r\n\r\nThis is because MOC tries to automatically connect functions which have\r\n\"on_objectname_triggered\" signature, and it can't find a matching signal\r\nfor it by default. So the solution for that is to simply not use the\r\nautoconnection mechanism by changing names of those slots, removing\r\n\"on\" prefix from them.\r\n\r\n* PaletteWidget: Do not use autoconnection mechanism for slots used in\r\nQMenu\r\n\r\nCurrently whenever UI gets loaded and we try to connect a slot with a\r\nsignal emitted in QAction, for example in appending frame, inserting it,\r\netc. we get warnings like these:\r\n\r\nqt.core.qmetaobject.connectslotsbyname: QMetaObject::connectSlotsByName: No matching signal for on_actionAdd_Frame_triggered()\r\n\r\nThis is because MOC tries to automatically connect functions which have\r\n\"on_objectname_triggered\" signature, and it can't find a matching signal\r\nfor it by default. So the solution for that is to simply not use the\r\nautoconnection mechanism by changing names of those slots, removing\r\n\"on\" prefix from them.","shortMessageHtmlLink":"MenuEdit: Do not use autoconnection mechanism for slots used in QMenu ("}},{"before":"9eb585ba93e8be79b51e0ddc7f5683c71347699f","after":"8de1d4c3e5ec65fc967b73f10f420bd0d82a7da7","ref":"refs/heads/master","pushedAt":"2023-11-12T00:27:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Cleanup: Rename trn1/trn2 instances to trn/trnUnique\n\nCleanup patch - makes the naming a lot clearer.","shortMessageHtmlLink":"Cleanup: Rename trn1/trn2 instances to trn/trnUnique"}},{"before":"248beafe6fa88f6e9cb76bc1be35ab3ca9b9e3bb","after":"9eb585ba93e8be79b51e0ddc7f5683c71347699f","ref":"refs/heads/master","pushedAt":"2023-11-09T22:44:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Remove unessesery files from source list","shortMessageHtmlLink":"Remove unessesery files from source list"}},{"before":"0aea2471ee6b5ae27f3fa3236a8357f140b8b8a5","after":"248beafe6fa88f6e9cb76bc1be35ab3ca9b9e3bb","ref":"refs/heads/master","pushedAt":"2023-11-09T21:48:25.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Bump version to 1.0.1","shortMessageHtmlLink":"Bump version to 1.0.1"}},{"before":"ffb5b1a31bf43f6deda7e1eb149fc8de96fa4eb2","after":"0aea2471ee6b5ae27f3fa3236a8357f140b8b8a5","ref":"refs/heads/master","pushedAt":"2023-11-08T15:17:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"LevelCelView: Fix frame not being displayed properly in Tile/Megatile\n\nThis patch fixes the incorrect behaviour where we click on tile/megatile,\nselecting a certain frame, and then after pressing\n\"next/previous/first/last frame button\" frame in the frame preview is not the\nsame one displayed in tile/megatile view.\n\nThis is caused by the celFrameIndices QList in D1Min class, which holds\nframe indices starting from 1, not 0. This patch adds 1 to all the frame\nindices when they are selected from QList in D1Min class, so the offset\nis the same one as it is in LevelCelView.","shortMessageHtmlLink":"LevelCelView: Fix frame not being displayed properly in Tile/Megatile"}},{"before":"7f6c8466d094a93d3d62feb0e4b894aa4200fc02","after":"ffb5b1a31bf43f6deda7e1eb149fc8de96fa4eb2","ref":"refs/heads/master","pushedAt":"2023-11-03T01:07:45.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Ui: Promote QGraphicsView to View in LevelCelView/CelView\n\nThis patch promotes QGraphicsView widget to View class in\nLevelCelView/CelView ui forms, so events for mouse can be dispatched\nproperly.","shortMessageHtmlLink":"Ui: Promote QGraphicsView to View in LevelCelView/CelView"}},{"before":"4de2c92056e2a1b9c0a1e763bd78b70637a69278","after":"7f6c8466d094a93d3d62feb0e4b894aa4200fc02","ref":"refs/heads/master","pushedAt":"2023-10-30T01:40:36.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"LevelCelView: Remove unnecessary comment\n\nAs in the title.","shortMessageHtmlLink":"LevelCelView: Remove unnecessary comment"}},{"before":"49cfe20d1a2841529c0b5ad896d08105be538fc3","after":"4de2c92056e2a1b9c0a1e763bd78b70637a69278","ref":"refs/heads/master","pushedAt":"2023-10-29T01:18:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"LevelCelView: Align tooltips for Frame/Tile/Megatile buttons/line edits\n\nThis patch aligns tooltips for frame/tile/megatile in LevelCelView ui,\nso it doesn't display \"Next Group\"/\"Last Group\" when hoovered over.","shortMessageHtmlLink":"LevelCelView: Align tooltips for Frame/Tile/Megatile buttons/line edits"}},{"before":"9e948bb497e1dc1f533be9179d110c4c0517bdca","after":"49cfe20d1a2841529c0b5ad896d08105be538fc3","ref":"refs/heads/master","pushedAt":"2023-10-25T21:05:26.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Config: Open in home directory if app is being run for the 1st time\n\nPreviously, if user didn't have config files (which is (most of the\ntimes) equivalent to running the app for the first time), then by\ndefault next file that he wanted to open would be opened in the config\ndirectory. This oneliner changes it, opening it in home directory by\ndefault.","shortMessageHtmlLink":"Config: Open in home directory if app is being run for the 1st time"}},{"before":"cb87ed0722ddad1ed3156589704626b3fa13c970","after":"9e948bb497e1dc1f533be9179d110c4c0517bdca","ref":"refs/heads/master","pushedAt":"2023-10-24T16:20:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Cleanup: Align rest of UI with Tile/Megatile naming\n\nThis patch cleans up a few different usages of subtile/tile naming in UI\nand aligns it with current megatile/tile naming that was introduced.","shortMessageHtmlLink":"Cleanup: Align rest of UI with Tile/Megatile naming"}},{"before":"e4127fd0c205cf50715ee32412697df5b01a2b6d","after":"cb87ed0722ddad1ed3156589704626b3fa13c970","ref":"refs/heads/master","pushedAt":"2023-10-22T12:58:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Fix: Don't reset frame count upon click if there's only 1 frame group\n\nThis patch fixes a behaviour when user clicks one of these buttons:\n- previous frame group button\n- next frame group button\n- last frame group button\n- first frame group button\n\nAnd there is only one frame group available. Currently if someone\npresses those buttons frame count will be reseted, this patch fixes it\nby basically returning from function immediately if there's only 1 frame\ngroup available.","shortMessageHtmlLink":"Fix: Don't reset frame count upon click if there's only 1 frame group"}},{"before":"2e62c58793e2f09bc41333084ae9417a2255eeec","after":"e4127fd0c205cf50715ee32412697df5b01a2b6d","ref":"refs/heads/master","pushedAt":"2023-10-20T15:56:16.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Documentation: Add documentatioon to config.cpp\n\nAdds documentation to config.cpp, for functions that were missing it and\nalso for newly added createDirectoriesOnPath().","shortMessageHtmlLink":"Documentation: Add documentatioon to config.cpp"}},{"before":"5ef823c38f6aace95ffb29e6e13e285d4aaf22ce","after":"2e62c58793e2f09bc41333084ae9417a2255eeec","ref":"refs/heads/master","pushedAt":"2023-10-19T15:01:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Update clang-format-check.yml","shortMessageHtmlLink":"Update clang-format-check.yml"}},{"before":"d0cb411a3b4edc07ca74f3bb9b7227afb6de418d","after":null,"ref":"refs/heads/naming","pushedAt":"2023-10-19T14:44:15.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"}},{"before":"1090703a696cd57e10892e1bf727ec2461a6f960","after":"5ef823c38f6aace95ffb29e6e13e285d4aaf22ce","ref":"refs/heads/master","pushedAt":"2023-10-19T14:44:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Align level tile naming convention with outside world","shortMessageHtmlLink":"Align level tile naming convention with outside world"}},{"before":null,"after":"d0cb411a3b4edc07ca74f3bb9b7227afb6de418d","ref":"refs/heads/naming","pushedAt":"2023-10-19T14:31:31.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Align level tile naming convention with outside world","shortMessageHtmlLink":"Align level tile naming convention with outside world"}},{"before":"30b5a8e9f13a345bc2477d206f10e4c625a69f34","after":"1090703a696cd57e10892e1bf727ec2461a6f960","ref":"refs/heads/master","pushedAt":"2023-10-19T14:12:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Remove version number from desktop file","shortMessageHtmlLink":"Remove version number from desktop file"}},{"before":"b8e29d97527f601f7973f388656ed8d96de4248e","after":"30b5a8e9f13a345bc2477d206f10e4c625a69f34","ref":"refs/heads/master","pushedAt":"2023-10-19T14:12:01.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AJenbo","name":"Anders Jenbo","path":"/AJenbo","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/204594?s=80&v=4"},"commit":{"message":"Fix: Compatibility with Qt5 + CPack configuration in CMakeLists + bump versions/cleanup files (#117)","shortMessageHtmlLink":"Fix: Compatibility with Qt5 + CPack configuration in CMakeLists + bum…"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAD8uKDmQA","startCursor":null,"endCursor":null}},"title":"Activity · diasurgical/d1-graphics-tool"}