Frédéric Guillot
bfd8860398
feat(api): add new endpoints to manage API keys
2025-05-25 15:50:13 -07:00
Kelly Norton
09fb05aaaf
feat: add option to always open articles externally
2025-05-24 19:46:01 -07:00
Tianzhi Jin
b65373db7e
feat(webauthn): perfer creation of a client-side discoverable credential
2025-05-22 20:14:00 -07:00
Anton Larionov
553c578f2e
feat(rssbridge): support auth token for RSS-Bridge
2025-05-19 20:47:12 -07:00
Tianzhi Jin
81ec32a8b6
fix(webauthn): correct arg in debug log
2025-05-14 21:01:52 -07:00
Frédéric Guillot
5ae2cbd943
feat(settings): add validation for entry order and categories sorting order
2025-05-11 17:52:59 -07:00
Frédéric Guillot
d33e305af9
fix(api): hide_globally
categories field should be a boolean
2025-04-21 19:43:25 -07:00
Frédéric Guillot
764212f37c
refactor(js): replace DomHelper
methods with standalone functions
2025-04-17 18:15:08 -07:00
Tali Auster
e02b65d4bc
fix: deal with navigator.share exceptions
...
Navigator.share returns a promise that's executed in the background, but
unless we await it explicitly, we won't get the exceptions in the
try/catch block.
2025-04-17 17:07:38 -07:00
Tali Auster
2959a4d2bf
fix: clarify share flow in UI
...
Prior to this commit, to share an entry, a user has to click on the
share link and then copy the URL they are redirected to. The danger is
that they may right-click and copy the share link without actually
clicking on it, and therefore share a link that, when authenticated,
shares the entry, rather than actually sharing the entry.
Here, we avoid this misinterpretation by making sharing into a POST
request and using a form rather than a link.
2025-04-17 17:07:38 -07:00
Frédéric Guillot
ef22e95f8b
feat: implement proxy URL per feed
2025-04-06 21:05:19 -07:00
Frédéric Guillot
535fd050b7
feat: add proxy rotation functionality
2025-04-06 14:59:00 -07:00
Frédéric Guillot
cb695e653a
fix(security): use a more restrictive CSP for untrusted content
2025-03-29 19:49:41 -07:00
Frédéric Guillot
969efd2af7
fix(ui): update share feature to correctly select title element and handle empty title
2025-03-28 15:36:43 -07:00
Frédéric Guillot
87fccfee3a
fix(ui): remove touch-action style because it could cause horizontal scrolling issue
2025-03-28 15:20:31 -07:00
Frédéric Guillot
e643effefa
feat: combine feed icon handlers to use only externalIconID
2025-03-28 14:29:19 -07:00
Frédéric Guillot
c531be8780
fix: update Content-Security-Policy to use 'sandbox' directive
2025-03-28 13:06:59 -07:00
Frédéric Guillot
e342a4f143
fix: address minor issues detected by Go linters
2025-03-24 20:48:46 -07:00
Paul Stenius
0cf5051cf8
feat: show size of DB on the about page
2025-03-05 15:49:32 -08:00
Uziskull
55a3f9fcc9
feat(integrations/ntfy): make ntfy topics configurable per feed, with default one as fallback
2025-02-24 16:29:08 -08:00
Frédéric Guillot
991c54150d
fix(css): avoid aside overflow on the pagination menu
2025-02-15 17:15:52 -08:00
Sergio Moura
3387201634
feat(pushover): add integration with pushover.net
2025-02-13 20:50:37 -08:00
Wesley van Tilburg
459284ab96
feat(integration): add webhook URL per feed
2025-01-31 16:33:11 -08:00
Sangeeth Sudheer
e40446ad3c
fix(ui): Redirect correctly post feed removal from category feeds list
...
Currently, removing a feed from `/category/{id}/feeds` redirects incorrectly to `/feeds`. This change fixes it so that
removing a feed will now correctly redirect to `/category/{id}/feeds`. Removing a feed from `/feeds` is unaffected and
will work as it does currently.
To fix this, a new UI endpoint `/category/{categoryID}/feed/{feedID}/remove` is added and a corresponding handler method
to validate and perform the removal from DB.
2025-01-27 17:43:54 -08:00
CaptainArk
fba23cf464
feat(integration): add Slack integration
2025-01-27 17:37:22 -08:00
Frédéric Guillot
0c74497ef7
fix(js): regression introduced in commit ffe1be5
...
The default argument should be set to false.
2025-01-24 17:52:58 -08:00
jvoisin
4938a94968
Remove another superfluous cast
2025-01-23 19:20:13 -08:00
jvoisin
ffe1be59ea
Use a default parameter for goToPage as isn't ~always called with a single one
2025-01-23 19:20:13 -08:00
jvoisin
2318e9011d
Use proper types in app.js
2025-01-23 19:20:13 -08:00
jvoisin
67df305ac2
Use shortcuts to declare padding
2025-01-23 19:20:13 -08:00
jvoisin
71c7845c42
Anchor =
removal in webauthn_handler.js
...
Since we're base64-encoding, `=` can only happen at the end, so no need to
traverse the whole payload.
2025-01-23 19:20:13 -08:00
jvoisin
aa56d23551
Replace the deprecated window.pageYOffset with window.scollY
...
See https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollY
2025-01-23 19:20:13 -08:00
jvoisin
3cd448099d
Remove a useless return
2025-01-23 19:20:13 -08:00
Frédéric Guillot
47ccefba4e
fix(css): --entry-content-aside-border-color
is missing from
...
`system.css`
2025-01-22 21:00:50 -08:00
Frédéric Guillot
e74d875d95
feat(css): improve aside element position on smartphone
2025-01-22 20:24:33 -08:00
Frédéric Guillot
400e8974f9
fix: improve pagination when having identical publication date
2025-01-18 16:59:48 -08:00
Frédéric Guillot
c9c422b135
feat: bump linter and minifier from ECMAScript 2017 to 2020 (ES11)
2025-01-18 11:32:50 -08:00
Julien Voisin
91f9a7650e
refactor(js): add jshint check for strict comparison
2025-01-16 17:50:09 -08:00
jvoisin
605eeb4525
Fix a mistake introduced in f67d2e230b
...
Spotted by @michaelkuhn
2025-01-16 17:37:54 -08:00
Julien Voisin
eb6991ae49
tests(js): improve .jshintrc
2025-01-15 18:43:03 -08:00
Julien Voisin
6af0cd5b5c
refactor(js): simplify a bit keyboard_handler.js
...
- Mark two methods as static
- Use a `switch-case` construct instead of an Object and a loop.
2025-01-14 20:50:21 -08:00
Julien Voisin
fccca0ce1e
refactor(js): minor refactoring of touch_handler.js
...
- Mark a method as `static`
- use `Math.sqrt` instead of `Math.pow(…, 0.5)`
- Use `Math.sign` instead of a condition on the sign
- Inline some used-once variables
- Reduce the scope of some variables
2025-01-14 20:47:30 -08:00
Julien Voisin
8c3a9184ac
refactor(js): remove an outdated check for {passive: true}
...
According to https://caniuse.com/?search=passive ,
all browsers released after 2016 do support passive event listeners,
so no need to check for its presence.
2025-01-14 20:18:11 -08:00
Brieuc Dubois
a702bf0342
feat(ntfy): Add option to use internal links
2025-01-13 10:36:49 -08:00
Frédéric Guillot
f5fde36d45
fix(ui): reading preferences are reset if the form values are incorrect
2025-01-12 16:16:29 -08:00
Julien Voisin
1e54a073d3
refactor(js): minor improvements in app.js
...
- Use `….classList.toggle` instead of `….classList.add`/`….classList.remove` in a condition
- Replace a `function()` with a `() =>`
- Use `Math.min` instead of a handwritten condition
2025-01-12 12:54:08 -08:00
CaptainArk
9b25ea4ed6
feat(integration): add Discord integration
2025-01-12 12:18:57 -08:00
jvoisin
a06657b74d
Factorise a line in internal/ui/static/js/app.js
2024-12-15 20:54:17 -08:00
jvoisin
14a6e8ed3a
Factorise .pagination-next and .pagination-last together
2024-12-15 17:03:09 -08:00
jvoisin
c3e842eba6
Remove -webkit-clip-path
...
https://caniuse.com/?search=clip-path says that `clip-path`
is supported since Safari 13.1
2024-12-15 17:03:09 -08:00