{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":71846636,"defaultBranch":"master","name":"stripes-core","ownerLogin":"folio-org","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2016-10-25T01:15:59.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/16495055?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716561762.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"b96246e98f23f4bbd7fb016b2bddf078194234fe","ref":"refs/heads/STCOR-776-activeEvents","pushedAt":"2024-05-24T14:42:42.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"STCOR-776 always populate stripes.config.rtr.activityEvents\n\n* Always populate `stripes.config.rtr.activityEvents`; if it isn't\n defined at build-time via `stripes.config.js`, populate it with values\n from `RTR_ACTIVITY_EVENTS`. Previously, it was omitted if not defined\n in `stripes.config.js`, causing the KeepWorkingModal callback to\n dispatch an empty event, dismissing the modal but failing to actually\n prolong the session since no \"activity\" event was fired. Whoops.\n Related, this means we must supply `activityEvents` on `stripes` in\n tests of `` where it is rendered directly,\n without `` as a parent to call `configureRtr()`.\n* Populate `stripes.config.rtr.idleSessionTTL` and\n `stripes.config.rtr.idleModalTTL` from their corresponding constants\n instead of hard-coding magic strings in multiple places like an idiot.\n* Minor test clean up. We don't need to reassign `console` methods when\n we can just run jest with `--silent`.\n\nRefs STCOR-776","shortMessageHtmlLink":"STCOR-776 always populate stripes.config.rtr.activityEvents"}},{"before":"bae2bce4ece7b6a3ac58372d1bf8b29b6b72df09","after":null,"ref":"refs/heads/STCOR-829-bugtest","pushedAt":"2024-05-24T11:01:45.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"manvendra-s-rathore","name":"Manvendra","path":"/manvendra-s-rathore","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/105021655?s=80&v=4"}},{"before":null,"after":"4c10e1e5eccb556c96171251848b8fc40b56b7a4","ref":"refs/heads/test-AuthErrorsContainer","pushedAt":"2024-05-24T03:47:46.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"test ","shortMessageHtmlLink":"test <AuthErrorsContainer>"}},{"before":null,"after":"36c2c3290877bb53feef61ff0b7baf3d42bcd5f7","ref":"refs/heads/STCOR-842","pushedAt":"2024-05-24T02:42:47.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"STCOR-842 refactor away from deprecated getChildContext\n\n`getChildContext` will be deprecated in React v19. `AddContext` can be\neliminated completely; it duplicates the functionality offered by\n`StripesContext`.\n\nRefs STCOR-842","shortMessageHtmlLink":"STCOR-842 refactor away from deprecated getChildContext"}},{"before":"87e72539c722456768b292b64527c1e835c15de4","after":null,"ref":"refs/heads/STCOR-853","pushedAt":"2024-05-23T21:07:24.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"}},{"before":"bc0428871d0353bf9ba32f9d4dbfb6231eb1a481","after":"d6e7af84b5db2baaa60e253816496cd8b79daf0a","ref":"refs/heads/keycloak-ramsons","pushedAt":"2024-05-23T21:07:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"STCOR-853 do not include credential in /authn/token request (#1480)\n\nThe request to `/authn/token` pulls an OTP from the query string and\r\nexchanges it for AT/RT cookies. If, somehow, the browser already has\r\ncookies and sends them along on this request, it causes a negative\r\nfeedback look because the OTP and the cookies are out of sync.\r\nThe old AT/RT cookies will cause the endpoint to return 4xx, which will\r\nresult in a redirect back to keycloak, which will find its (still\r\nperfectly valid) authentication cookies, which will cause it redirect\r\nback to stripes with a new OTP ... and the cycle repeats.\r\n\r\nThus, when we are exchanging an OTP, we don't want to send any cookies.\r\nWe want stripes to send the OTP and have new cookies from the response\r\noverwrite anything that was previously stored.\r\n\r\nRefs STCOR-853","shortMessageHtmlLink":"STCOR-853 do not include credential in /authn/token request (#1480)"}},{"before":null,"after":"87e72539c722456768b292b64527c1e835c15de4","ref":"refs/heads/STCOR-853","pushedAt":"2024-05-23T21:00:26.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"STCOR-853 do not include credential in /authn/token request\n\nThe request to `/authn/token` pulls an OTP from the query string and\nexchanges it for AT/RT cookies. If, somehow, the browser already has\ncookies and sends them along on this request, it causes a negative\nfeedback look because the OTP and the cookies are out of sync.\nThe old AT/RT cookies will cause the endpoint to return 4xx, which will\nresult in a redirect back to keycloak, which will find its (still\nperfectly valid) authentication cookies, which will cause it redirect\nback to stripes with a new OTP ... and the cycle repeats.\n\nThus, when we are exchanging an OTP, we don't want to send any cookies.\nWe want the to send the OTP and have new cookies from the response\noverwrite anything that was previously stored.\n\nRefs STCOR-853","shortMessageHtmlLink":"STCOR-853 do not include credential in /authn/token request"}},{"before":"13294195f60d0d0c294ac0705902f3300c072a9c","after":null,"ref":"refs/heads/STCOR-853","pushedAt":"2024-05-23T21:00:19.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"}},{"before":"12d06a8b114d31721f00bfdb16e97a46faf10338","after":"13294195f60d0d0c294ac0705902f3300c072a9c","ref":"refs/heads/STCOR-853","pushedAt":"2024-05-23T20:55:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"rebase-cleanup: restore logout AND ITS TESTS (#1479)\n\nThe previous commit re-enabled logout by correctly passing the\r\n`x-okapi-tenant` header in the `/authn/logout` request. It turns out\r\nthat if you want read the tenant from the store in a test, you have to\r\nmock the store in your test. WHO KNEW???","shortMessageHtmlLink":"rebase-cleanup: restore logout AND ITS TESTS (#1479)"}},{"before":"6211b15860c8500dc56f1e5e79b0710e5e5b9fab","after":null,"ref":"refs/heads/rebase-clean-up-logout-test","pushedAt":"2024-05-23T20:31:44.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"}},{"before":"bc578193e92b93a95c99705635c36cd0b6ccf31a","after":"bc0428871d0353bf9ba32f9d4dbfb6231eb1a481","ref":"refs/heads/keycloak-ramsons","pushedAt":"2024-05-23T20:31:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"rebase-cleanup: restore logout AND ITS TESTS (#1479)\n\nThe previous commit re-enabled logout by correctly passing the\r\n`x-okapi-tenant` header in the `/authn/logout` request. It turns out\r\nthat if you want read the tenant from the store in a test, you have to\r\nmock the store in your test. WHO KNEW???","shortMessageHtmlLink":"rebase-cleanup: restore logout AND ITS TESTS (#1479)"}},{"before":null,"after":"6211b15860c8500dc56f1e5e79b0710e5e5b9fab","ref":"refs/heads/rebase-clean-up-logout-test","pushedAt":"2024-05-23T20:20:58.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"rebase-cleanup: restore logout AND ITS TESTS\n\nThe previous commit re-enabled logout by correctly passing the\n`x-okapi-tenant` header in the `/authn/logout` request. It turns out\nthat if you want read the tenant from the store in a test, you have to\nmock the store in your test. WHO KNEW???","shortMessageHtmlLink":"rebase-cleanup: restore logout AND ITS TESTS"}},{"before":"0d745ad3a65f14790562f1e771c9f07c696f1638","after":null,"ref":"refs/heads/rebase-clean-up-logout-test","pushedAt":"2024-05-23T20:20:50.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"}},{"before":"1faf77b6a2e49e93284465d5179b8eef8140b997","after":"bc578193e92b93a95c99705635c36cd0b6ccf31a","ref":"refs/heads/keycloak-ramsons","pushedAt":"2024-05-23T20:03:00.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"rebase-cleanup: restore logout\n\nThe `/authn/logout` request requires the `X-Okapi-Tenant` header to\nsucceed.","shortMessageHtmlLink":"rebase-cleanup: restore logout"}},{"before":null,"after":"0d745ad3a65f14790562f1e771c9f07c696f1638","ref":"refs/heads/rebase-clean-up-logout-test","pushedAt":"2024-05-23T19:14:58.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"rebase-cleanup: restore logout AND ITS TESTS\n\nThe previous commit re-enabled logout by correctly passing the\n`x-okapi-tenant` header in the `/authn/logout` request. It turns out\nthat if you want read the tenant from the store in a test, you have to\nmock the store in your test. WHO KNEW???","shortMessageHtmlLink":"rebase-cleanup: restore logout AND ITS TESTS"}},{"before":null,"after":"12d06a8b114d31721f00bfdb16e97a46faf10338","ref":"refs/heads/STCOR-853","pushedAt":"2024-05-23T18:17:09.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"STCOR-853 do not include credential in /authn/token request\n\nThe request to `/authn/token` pulls an OTP from the query string and\nexchanges it for AT/RT cookies. If, somehow, the browser already has\ncookies and sends them along on this request, it causes a negative\nfeedback look because the OTP and the cookies are out of sync.\nThe old AT/RT cookies will cause the endpoint to return 4xx, which will\nresult in a redirect back to keycloak, which will find its (still\nperfectly valid) authentication cookies, which will cause it redirect\nback to stripes with a new OTP ... and the cycle repeats.\n\nThus, when we are exchanging an OTP, we don't want to send any cookies.\nWe want the to send the OTP and have new cookies from the response\noverwrite anything that was previously stored.\n\nRefs STCOR-853","shortMessageHtmlLink":"STCOR-853 do not include credential in /authn/token request"}},{"before":"a2406bc6d56ec9c12b1d86650c4d5538d1ff0d94","after":"1faf77b6a2e49e93284465d5179b8eef8140b997","ref":"refs/heads/keycloak-ramsons","pushedAt":"2024-05-23T14:41:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ryandberger","name":"Ryan Berger","path":"/ryandberger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28395235?s=80&v=4"},"commit":{"message":"Revert \"Merge branch 'keycloak-ramsons' of https://github.com/folio-org/stripes-core into keycloak-ramsons\"\n\nThis reverts commit a2406bc6d56ec9c12b1d86650c4d5538d1ff0d94, reversing\nchanges made to ff01ae929acd6a4ef06fc1ea57476eded0f14d90.","shortMessageHtmlLink":"Revert \"Merge branch 'keycloak-ramsons' of https://github.com/folio-o…"}},{"before":"bc578193e92b93a95c99705635c36cd0b6ccf31a","after":"a2406bc6d56ec9c12b1d86650c4d5538d1ff0d94","ref":"refs/heads/keycloak-ramsons","pushedAt":"2024-05-23T14:41:16.000Z","pushType":"push","commitsCount":39,"pusher":{"login":"ryandberger","name":"Ryan Berger","path":"/ryandberger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28395235?s=80&v=4"},"commit":{"message":"Merge branch 'keycloak-ramsons' of https://github.com/folio-org/stripes-core into keycloak-ramsons","shortMessageHtmlLink":"Merge branch 'keycloak-ramsons' of https://github.com/folio-org/strip…"}},{"before":null,"after":"a99d64ec0facd09a0c8a16328e29c3f534f79705","ref":"refs/heads/STCOR-851","pushedAt":"2024-05-22T20:56:08.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"STCOR-851 accept locale from stripes-config\n\nAllow `stripes.config.js` to set `config.locale` in order to override\nthe default value, `en-US`. This allows a tenant to set the locale for\npages that are displayed before authenticating, when the tenant's locale\ncan be read from mod-configuration.\n\nThe `stripes.config.js` value will be overwritten by the stored value\nfrom mod-configuration, if present.\n\nRefs STCOR-851","shortMessageHtmlLink":"STCOR-851 accept locale from stripes-config"}},{"before":"10c1e5c05d491cb209bdea10ba108a1b8f960140","after":"56b1ca9be10f2cecf7eecb8ba323939bbdfcf3ed","ref":"refs/heads/STCOR-852","pushedAt":"2024-05-22T17:20:06.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"re-remove build-npm.yml; adjusting required checks is a GH repo-level setting","shortMessageHtmlLink":"re-remove build-npm.yml; adjusting required checks is a GH repo-level…"}},{"before":"447b54069d4eca847ab00f151200adc37dc30b77","after":"10c1e5c05d491cb209bdea10ba108a1b8f960140","ref":"refs/heads/STCOR-852","pushedAt":"2024-05-22T16:50:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"restore build-npm since GH reports 'build-npm' as a required step ... but it can never complete","shortMessageHtmlLink":"restore build-npm since GH reports 'build-npm' as a required step ...…"}},{"before":"ab6fb8d0fb9683b84e81c50e7abc25696a8f692e","after":"447b54069d4eca847ab00f151200adc37dc30b77","ref":"refs/heads/STCOR-852","pushedAt":"2024-05-22T15:55:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"run bigtest via xvfb; maybe this should be a default?","shortMessageHtmlLink":"run bigtest via xvfb; maybe this should be a default?"}},{"before":"81ca6c0cc8313fcf26776170b27a56764a3ff6a6","after":"ab6fb8d0fb9683b84e81c50e7abc25696a8f692e","ref":"refs/heads/STCOR-852","pushedAt":"2024-05-22T15:02:11.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"spaces?","shortMessageHtmlLink":"spaces?"}},{"before":null,"after":"81ca6c0cc8313fcf26776170b27a56764a3ff6a6","ref":"refs/heads/STCOR-852","pushedAt":"2024-05-22T14:53:50.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"STCOR-852 run CI with centralized workflows\n\nReplace local workflow templates.\n\nRefs STCOR-852","shortMessageHtmlLink":"STCOR-852 run CI with centralized workflows"}},{"before":"529fde65f203c2e87251d7e167c2ee72b3e80270","after":"77a519df8075e3a4c0a76e8aa0219d4a104c8620","ref":"refs/heads/test-validators","pushedAt":"2024-05-22T14:32:11.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"Merge branch 'master' into test-validators","shortMessageHtmlLink":"Merge branch 'master' into test-validators"}},{"before":"a32aa8fb8ed45e50102122a71df2a0087253eac0","after":null,"ref":"refs/heads/STCOR-844","pushedAt":"2024-05-22T14:31:59.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"}},{"before":"142ff27b0d34a6816e6b7ef8deb54079b7afd750","after":"05badf9c5eb8f4fb58988f32c03bcd4d360880d5","ref":"refs/heads/master","pushedAt":"2024-05-22T14:31:55.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"STCOM-1291 avoid defaultProps in functional components (#1469)\n\n`defaultProps` for functional components will be deprecated in React v19\r\nin favor of ES6 default parameters.\r\n\r\nRefs STCOR-844","shortMessageHtmlLink":"STCOM-1291 avoid defaultProps in functional components (#1469)"}},{"before":"51ba897fb133affe640b5b859588b9242c4a0fff","after":"a32aa8fb8ed45e50102122a71df2a0087253eac0","ref":"refs/heads/STCOR-844","pushedAt":"2024-05-22T14:05:47.000Z","pushType":"push","commitsCount":6,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"Merge branch 'master' into STCOR-844","shortMessageHtmlLink":"Merge branch 'master' into STCOR-844"}},{"before":"4f9527f4a7e82d498721f50ac9705a867ef545dd","after":null,"ref":"refs/heads/rebase-kaycloak-ramsons","pushedAt":"2024-05-22T12:09:21.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ryandberger","name":"Ryan Berger","path":"/ryandberger","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/28395235?s=80&v=4"}},{"before":"dc0f3c54681a1d4db6e98e997e0c29a50f231f35","after":"08d7acac4c57dc25dae759c72106ccadbbf7ce25","ref":"refs/heads/STCOR-846","pushedAt":"2024-05-20T20:43:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"zburke","name":"Zak Burke","path":"/zburke","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/199241?s=80&v=4"},"commit":{"message":"lint","shortMessageHtmlLink":"lint"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEUySE3wA","startCursor":null,"endCursor":null}},"title":"Activity · folio-org/stripes-core"}