{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":9289502,"defaultBranch":"main","name":"doi-resolver","ownerLogin":"mdmower","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2013-04-08T05:51:49.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/264920?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1725084742.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"8317196bd5df831f4cc67469f2b700b2bd9712ae","ref":"refs/heads/dependabot/npm_and_yarn/webpack-5.94.0","pushedAt":"2024-08-31T06:12:22.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"Bump webpack from 5.92.1 to 5.94.0\n\nBumps [webpack](https://github.com/webpack/webpack) from 5.92.1 to 5.94.0.\n- [Release notes](https://github.com/webpack/webpack/releases)\n- [Commits](https://github.com/webpack/webpack/compare/v5.92.1...v5.94.0)\n\n---\nupdated-dependencies:\n- dependency-name: webpack\n dependency-type: direct:development\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"Bump webpack from 5.92.1 to 5.94.0"}},{"before":"70df4e1275c7dcfefd6024e4a9cf19bb2916f575","after":"d719562c29072fb9a57510c8bfc3caf54ada4959","ref":"refs/heads/dev","pushedAt":"2024-08-18T19:26:39.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Add more options tests\n\n- Add tests for help and permissions modals","shortMessageHtmlLink":"Add more options tests"}},{"before":"801b1b4d411b3c80e0719586e6bb278148f174b6","after":"70df4e1275c7dcfefd6024e4a9cf19bb2916f575","ref":"refs/heads/dev","pushedAt":"2024-08-18T04:59:59.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Add more options tests\n\n- Add tests for settings synchronization and UI application of settings\n- Create reusable option label reference","shortMessageHtmlLink":"Add more options tests"}},{"before":"540b27b2ac00eb1f42d236fed83f21fc800cb8ae","after":"801b1b4d411b3c80e0719586e6bb278148f174b6","ref":"refs/heads/dev","pushedAt":"2024-08-13T04:20:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Add more options tests\n\n- Add tests for autolink","shortMessageHtmlLink":"Add more options tests"}},{"before":"27c455b8878a6b2e5eb5c85c69200ad9ec187f88","after":"540b27b2ac00eb1f42d236fed83f21fc800cb8ae","ref":"refs/heads/dev","pushedAt":"2024-08-12T06:12:12.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Add initial options tests\n\n- Add tests for display theme and setting options for omnibox, history,\n bubble buttons, context menu, and custom resolver.","shortMessageHtmlLink":"Add initial options tests"}},{"before":"c3bac56e40753484fc75dcceace6263d33fc390c","after":"27c455b8878a6b2e5eb5c85c69200ad9ec187f88","ref":"refs/heads/dev","pushedAt":"2024-08-12T04:56:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"wip","shortMessageHtmlLink":"wip"}},{"before":"9419911588f63d7a68deeaf3c8db17cc5fb91742","after":"c3bac56e40753484fc75dcceace6263d33fc390c","ref":"refs/heads/dev","pushedAt":"2024-08-11T06:57:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Add more options tests\n\nAdd tests for:\n- history sub-option visibility\n- context menu\n- context menu match and reliance on context menu\n- QR and citation buttons\n\nRemove race condition on options set tests: When setting an option, wait\nfor the value to be set in storage rather than assuming it will be\nimmediately available. Add a helper function to simplify this.","shortMessageHtmlLink":"Add more options tests"}},{"before":"b9f63959690dfd76e39a6f4e64de6c3e4a25411f","after":"9419911588f63d7a68deeaf3c8db17cc5fb91742","ref":"refs/heads/dev","pushedAt":"2024-08-10T21:00:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Restore order of worker retrieval in tests\n\nIt seems backwards to try and get the service worker from the context\nand then wait for the service worker event, but this pattern is the only\none that is reliable on both fast and slow CPUs.","shortMessageHtmlLink":"Restore order of worker retrieval in tests"}},{"before":"9b7a33e3d598aed91d5a9f90d2d0901f2301c356","after":"b9f63959690dfd76e39a6f4e64de6c3e4a25411f","ref":"refs/heads/dev","pushedAt":"2024-08-10T08:47:25.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Add initial options tests\n\nAdd tests for:\n- display theme use and configuration\n- omnibox configuration\n- history configuration","shortMessageHtmlLink":"Add initial options tests"}},{"before":"286c86b5d250a5ba62538b555999f926d2961071","after":"9b7a33e3d598aed91d5a9f90d2d0901f2301c356","ref":"refs/heads/dev","pushedAt":"2024-08-06T04:52:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Finish bubble tests\n\nAdd tests for history selection including display, order, and\nfunctionality.","shortMessageHtmlLink":"Finish bubble tests"}},{"before":"1492da3c8c7763ae5c569938b4fac440fadc931a","after":"286c86b5d250a5ba62538b555999f926d2961071","ref":"refs/heads/dev","pushedAt":"2024-07-31T06:55:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Add more bubble tests\n\n- Make all optional permissions required so that additional features can\n be tested (hopefully a temporary change).\n- Add tests to make sure DOIs are recorded on navigation if history is\n enabled (including title if that is additionally enabled).","shortMessageHtmlLink":"Add more bubble tests"}},{"before":"e4d0a4604513b84471ea436ea4c63a821b5d6bfd","after":"1492da3c8c7763ae5c569938b4fac440fadc931a","ref":"refs/heads/dev","pushedAt":"2024-07-30T04:53:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Add more bubble tests\n\n- Provide additional extension information via fixtures\n- Add tests for:\n - invalid DOI notification\n - meta buttons show/hide\n - options button\n - citation button\n - qr button","shortMessageHtmlLink":"Add more bubble tests"}},{"before":"630c55bd6ab033670c9a416b2e182b5137e496e9","after":"e4d0a4604513b84471ea436ea4c63a821b5d6bfd","ref":"refs/heads/dev","pushedAt":"2024-07-28T07:02:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Use stylistic typescript eslint config\n\n- Use most of typescript eslint stylistic-type-checked config\n - Disable @typescript-eslint/prefer-nullish-coalescing rule because\n there are many times when I want to handle empty string (or falsy in\n general) the same as null/undefined.\n - Disable @typescript-eslint/dot-notation because there is a\n semi-convention in this repository of accessing storage properties\n via ['...'] rather than dot notation.\n- Fix new linting errors","shortMessageHtmlLink":"Use stylistic typescript eslint config"}},{"before":"b977c51c52182f3355a06d9413fb0dc137d24abe","after":"630c55bd6ab033670c9a416b2e182b5137e496e9","ref":"refs/heads/dev","pushedAt":"2024-07-28T06:50:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Use type-checked typescript eslint config\n\n- Use @typescript-eslint/recommended-type-checked ruleset\n- Fix new lint errors","shortMessageHtmlLink":"Use type-checked typescript eslint config"}},{"before":"52209a7cd70c6f078b5cda96691f62ce6edb5959","after":"b977c51c52182f3355a06d9413fb0dc137d24abe","ref":"refs/heads/dev","pushedAt":"2024-07-28T06:28:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Update additional bubble buttons modal heading","shortMessageHtmlLink":"Update additional bubble buttons modal heading"}},{"before":"9f684b119db4c7bcbf1d6f8f96761f9f9a52a9ba","after":"52209a7cd70c6f078b5cda96691f62ce6edb5959","ref":"refs/heads/dev","pushedAt":"2024-07-28T05:31:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Minor source reorganization\n\n- Move SCSS alongside entrypoints\n- Import bootstrap JS in TS source","shortMessageHtmlLink":"Minor source reorganization"}},{"before":"60ee2e5c2feba152d58d6382abfb3b97cbc5e7c4","after":"9f684b119db4c7bcbf1d6f8f96761f9f9a52a9ba","ref":"refs/heads/dev","pushedAt":"2024-07-28T04:57:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Support exporting DOIs to CSV\n\n- Gather history functions into a Tools menu\n- Add Export entry to tools menu\n- Use csv-stringify to prepare CSV output from recorded DOIs","shortMessageHtmlLink":"Support exporting DOIs to CSV"}},{"before":"e21802cf8e7c183b0e53e6c9fa5f5225e65b7f2c","after":"60ee2e5c2feba152d58d6382abfb3b97cbc5e7c4","ref":"refs/heads/dev","pushedAt":"2024-07-27T17:37:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Change clear history button to only remove unsaved DOIs\n\n- Rename button \"Clear History\" to \"Clear Unsaved History\"\n- Do not delete saved DOIs when clearing history","shortMessageHtmlLink":"Change clear history button to only remove unsaved DOIs"}},{"before":"2ad2fb7ca969ebd3bbbc335a0b81b7124e5186b6","after":null,"ref":"refs/heads/playwright","pushedAt":"2024-07-27T17:26:15.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"}},{"before":"8bdde3102f9d7a39074b23ecc02174315c384070","after":null,"ref":"refs/heads/no-unsanitized","pushedAt":"2024-07-27T17:26:15.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"}},{"before":"5251f12352a65837fa3edcc039b22d8b410f4521","after":"e21802cf8e7c183b0e53e6c9fa5f5225e65b7f2c","ref":"refs/heads/dev","pushedAt":"2024-07-27T17:25:59.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Update npm packages","shortMessageHtmlLink":"Update npm packages"}},{"before":"939903c3c8fb3570fe674b01b95fd1416fc5ae4b","after":"5251f12352a65837fa3edcc039b22d8b410f4521","ref":"refs/heads/dev","pushedAt":"2024-07-27T14:58:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Skip imports of DOIs that exceed history length\n\nWhen a large list of DOIs is imported, retain only the last N DOIs where\nN is determined by the history length and the number of saved DOIs.","shortMessageHtmlLink":"Skip imports of DOIs that exceed history length"}},{"before":"b1d4a1d7bc67e58c01a31f5fe8de32d1cc9b3b24","after":"8bdde3102f9d7a39074b23ecc02174315c384070","ref":"refs/heads/no-unsanitized","pushedAt":"2024-07-27T06:27:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Handle additional UI strings with i18n messages\n\n- Use i18n messages to populate more HTML text nodes and attributes\n- Rename some snake_case classes and IDs for consistency","shortMessageHtmlLink":"Handle additional UI strings with i18n messages"}},{"before":"7760f0f1faa5da277d07eaad9b8b2e08297bb7a3","after":"b1d4a1d7bc67e58c01a31f5fe8de32d1cc9b3b24","ref":"refs/heads/no-unsanitized","pushedAt":"2024-07-26T20:34:32.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Introduce no-unsanitized linter\n\n- Add eslint-plugin-no-unsanitized and enforce default linting rules\n - Make an exception for innerHTML when assignment is filtered through\n DOMPurify.sanitize()\n- Add DOMPurify and apply to citation and title fetch API results\n- Remove all HTML from internationalization messages\n - Use unicode for &html; characters\n - Create substitution mechanism for messages where HTML is needed\n- Replace all .innerHTML uses (aside from those where DOMPurify is used)\n with either .textContent or node insertions.\n- Make use of .replaceChildren() in a few more places.","shortMessageHtmlLink":"Introduce no-unsanitized linter"}},{"before":"4efb7da0e1c19ab8e9c96b3e0ce5d70a5f4a8a8b","after":"7760f0f1faa5da277d07eaad9b8b2e08297bb7a3","ref":"refs/heads/no-unsanitized","pushedAt":"2024-07-26T19:26:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"[wip] playing around with template ideas","shortMessageHtmlLink":"[wip] playing around with template ideas"}},{"before":"730f011e872bfd788735f8284837cf3253c7583f","after":"4efb7da0e1c19ab8e9c96b3e0ce5d70a5f4a8a8b","ref":"refs/heads/no-unsanitized","pushedAt":"2024-07-24T05:35:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"[wip] playing around with template ideas","shortMessageHtmlLink":"[wip] playing around with template ideas"}},{"before":null,"after":"730f011e872bfd788735f8284837cf3253c7583f","ref":"refs/heads/no-unsanitized","pushedAt":"2024-07-07T19:56:03.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"[wip] playing around with template ideas","shortMessageHtmlLink":"[wip] playing around with template ideas"}},{"before":null,"after":"2ad2fb7ca969ebd3bbbc335a0b81b7124e5186b6","ref":"refs/heads/playwright","pushedAt":"2024-07-06T18:53:52.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"[wip] Playwright testing","shortMessageHtmlLink":"[wip] Playwright testing"}},{"before":"2308ca7d189450f16e735e9149a4d04c10e5fd3c","after":"939903c3c8fb3570fe674b01b95fd1416fc5ae4b","ref":"refs/heads/dev","pushedAt":"2024-07-06T04:22:26.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Prepare for tests\n\n- Add ts-jest and puppeteer\n- Add configuration for jest + ts-jest\n- Add test dir with ts and eslint configs\n- Add initial bubble test","shortMessageHtmlLink":"Prepare for tests"}},{"before":"b487813e1e9a8d59671c177115eef561268771af","after":"2308ca7d189450f16e735e9149a4d04c10e5fd3c","ref":"refs/heads/dev","pushedAt":"2024-06-30T05:00:31.000Z","pushType":"push","commitsCount":8,"pusher":{"login":"mdmower","name":"Matt Mower","path":"/mdmower","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/264920?s=80&v=4"},"commit":{"message":"Prepare for tests\n\n- Add ts-jest and puppeteer\n- Add configuration for jest + ts-jest\n- Add test dir with ts and eslint configs\n- Add initial bubble test","shortMessageHtmlLink":"Prepare for tests"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOC0zMVQwNjoxMjoyMi4wMDAwMDBazwAAAASpO9li","startCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wOC0zMVQwNjoxMjoyMi4wMDAwMDBazwAAAASpO9li","endCursor":"Y3Vyc29yOnYyOpK7MjAyNC0wNi0zMFQwNTowMDozMS4wMDAwMDBazwAAAARy1nIf"}},"title":"Activity ยท mdmower/doi-resolver"}