Kailash Nadh
496c89a461
Apply minor refactor in query loading logic and add missing queries.
...
- Remove statically hardcoded file names to globbing.
- Merge superfluous query reading functions.
- Retain old queryPath variable, readQueries() function name and the path arg.
2025-11-22 13:22:15 +05:30
13unk0wn
2ace00400f
Delete queries.sql
2025-11-22 13:14:38 +05:30
13unk0wn
f21adea7f5
split query.sql into batches
2025-11-22 13:14:27 +05:30
Kailash Nadh
817048985c
Split models file to domain specific files ( #2775 )
...
Co-authored-by: Mithilesh Gupta <guptamithilesh@protonmail.com>
2025-11-22 12:27:08 +05:30
Kailash Nadh
750ce91c69
Fix incorrect doc for query param in /api/campaign. Closes #2772 .
2025-11-22 10:13:42 +05:30
dependabot[bot]
60f7ac9351
Bump js-yaml from 4.1.0 to 4.1.1 in /frontend/email-builder ( #2767 )
...
Bumps [js-yaml](https://github.com/nodeca/js-yaml ) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md )
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1 )
---
updated-dependencies:
- dependency-name: js-yaml
dependency-version: 4.1.1
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-22 10:04:09 +05:30
Kailash Nadh
296245a1b3
Add 2FA TOTP support for authentication.
...
- Allow users to enable TOTP 2FA from the profile page by scanning a QR code.
- Create new `internal/tmptokens` in-memory token store for temp tokens for
temporary login -> 2FA flow.
- Refactor reset methods to use this package instead of inline locked map.
2025-11-20 23:23:54 +05:30
dependabot[bot]
4c3b58cb90
Bump golang.org/x/crypto from 0.40.0 to 0.45.0 ( #2766 )
...
Bumps [golang.org/x/crypto](https://github.com/golang/crypto ) from 0.40.0 to 0.45.0.
- [Commits](https://github.com/golang/crypto/compare/v0.40.0...v0.45.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/crypto
dependency-version: 0.45.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-20 10:29:00 +05:30
Kailash Nadh
75998ca5f6
Add Forgot password reset flow to the admin. Closes #2753 .
...
- `Forgot password` link+form on the login page.
- A temporary TTL'd token (in-memory) is e-emailed to the user if the account is active.
- Simple reset password page followed by an instant login+redirect to the admin dashboard.
2025-11-19 00:29:51 +05:30
Kailash Nadh
ea1eb3f857
Add warning to users:manage permission in docs. Closes #2752 .
2025-11-18 22:51:53 +05:30
Meysam
a2bfc0b77e
feat: add subscriber activity tracking UI in admin panel ( #2756 )
...
* feat: add subscriber activity tracking UI in admin panel
* Apply minor cosmetic fixes to the subscriber activity forum.
- Remove dead icon references
- Remove new i18n language strings and reuse existing ones
- Refresh i18n languages with new strings
- Tweak styles
---------
Co-authored-by: Kailash Nadh <kailash@nadh.in>
2025-11-18 22:22:16 +05:30
dependabot[bot]
b3f60a957f
Bump js-yaml from 4.1.0 to 4.1.1 in /frontend ( #2761 )
...
Bumps [js-yaml](https://github.com/nodeca/js-yaml ) from 4.1.0 to 4.1.1.
- [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md )
- [Commits](https://github.com/nodeca/js-yaml/compare/4.1.0...4.1.1 )
---
updated-dependencies:
- dependency-name: js-yaml
dependency-version: 4.1.1
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-18 21:41:28 +05:30
paulrudy
425c0d71f4
Update 3rd party instructions re Fly.io install ( #2757 )
...
Co-authored-by: paulrudy <paulrudy@noreply.codeberg.org>
2025-11-15 08:12:38 +05:30
Matthias Kröll
e469296bc8
Fix duplicate operationId in OpenAPI spec ( #2758 )
...
- Changed operationId for PUT /templates/{id}/default from 'updateTemplateById' to 'setDefaultTemplateById'
- Resolves issue #2729 where duplicate operationIds caused TypeScript type generation failures
- Both template endpoints now have unique operationIds as required by OpenAPI spec
2025-11-15 08:10:37 +05:30
Daniel Adeboye
22bcd70f01
feat: add Northflank deploy button ( #2736 )
2025-10-30 20:21:45 +05:30
Kailash Nadh
60c069d73d
Fix per_page=all not working on GET bounces API. Closes #2678 .
2025-10-25 17:52:04 +05:30
Kailash Nadh
b7e8b1ee1f
Fix tx handler incorrectly sanitizing subscriber_emails[]. Closes #2726 .
2025-10-25 17:36:50 +05:30
Kailash Nadh
cdf0a5c153
Add CORS configuration to security settings.
...
This patch adds a new CORS config textbox in Settings -> Security that allows
configuring CORS origin domains per line.
Closes #2724
2025-10-25 14:33:25 +05:30
dependabot[bot]
827a2081b0
Bump vite from 5.4.20 to 5.4.21 in /frontend ( #2722 )
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 5.4.20 to 5.4.21.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.21/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v5.4.21/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-version: 5.4.21
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-21 18:05:48 +05:30
Tristram
e8156e03ce
Update Czech translation ( #2694 )
...
General improvements to wording, consistency, and terminology.
2025-10-02 23:08:20 +05:30
dependabot[bot]
c666c4ff9e
Bump vite from 5.4.19 to 5.4.20 in /frontend ( #2691 )
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 5.4.19 to 5.4.20.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.20/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v5.4.20/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-version: 5.4.20
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-02 22:49:36 +05:30
Rohith Kumar Ankam
39658c446f
Add minor security enhancements ( #2682 )
...
- Remove `getHostByName` sprig function
- Fix ineffective constant-time-conparison protection in login
2025-09-29 20:29:30 +05:30
Kevin Cox
2085abefb4
Handle Postmark spam complaints. ( #2679 )
...
The code attempts to do this by handling the `SpamComplaint` `Type` however this is sent with a `RecordType` of `SpamComplaint` rather than `Bounce` so is ignored. Accepting this additional `RecordType` solves the issue.
This behaviour is described in Postmark's documentation.
> Note that that spam complaints, unsubscribes/subscribes, or manual deactivations have their own webhooks and are not trigged via the Bounce webhook.
>
> https://postmarkapp.com/developer/webhooks/bounce-webhook
https://postmarkapp.com/developer/webhooks/spam-complaint-webhook#spam-complaint-webhook-data
2025-09-29 20:23:58 +05:30
dependabot[bot]
fb60455d10
Bump vite from 5.4.18 to 5.4.20 in /frontend/email-builder ( #2660 )
...
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ) from 5.4.18 to 5.4.20.
- [Release notes](https://github.com/vitejs/vite/releases )
- [Changelog](https://github.com/vitejs/vite/blob/v5.4.20/packages/vite/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite/commits/v5.4.20/packages/vite )
---
updated-dependencies:
- dependency-name: vite
dependency-version: 5.4.20
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-29 20:23:14 +05:30
dependabot[bot]
27f58efae9
Bump axios from 1.8.2 to 1.12.0 in /frontend ( #2666 )
...
Bumps [axios](https://github.com/axios/axios ) from 1.8.2 to 1.12.0.
- [Release notes](https://github.com/axios/axios/releases )
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md )
- [Commits](https://github.com/axios/axios/compare/v1.8.2...v1.12.0 )
---
updated-dependencies:
- dependency-name: axios
dependency-version: 1.12.0
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-29 20:23:04 +05:30
Tristram
06275f1907
Update Czech translations ( #2688 )
...
- archiveSlug: "URL Slug" → "URL identifikátor"
- managePrefs: "Zpráva předvoleb" → "Správa předvoleb"
2025-09-29 20:21:39 +05:30
albanobattistella
2c5dc61427
Update it.json ( #2667 )
2025-09-15 11:17:17 +05:30
Rosano
d661fa874f
Fix typo in docs ( #2664 )
2025-09-13 12:10:45 +05:30
SweetPPro
a76099e9e5
incorrect ALTCHA Form challengeurl ( #2654 )
...
fixes incorrect ALTCHA Form challengeurl
2025-09-10 10:44:22 +05:30
Kailash Nadh
943a961bfc
Update release details on the static homepage.
2025-09-09 23:35:51 +05:30
Kailash Nadh
30846f8415
Ignore altcha.umd.js from frontend build so that goreleaser ignores it.
2025-09-09 23:15:27 +05:30
Kailash Nadh
e27a3904c6
Expand the warning on subscribers:sql_query permission on arbitrary SQL functions.
2025-09-09 22:59:45 +05:30
Kailash Nadh
6d99316528
Auto-translate new i18n language strings.
2025-09-09 22:35:48 +05:30
Kailash Nadh
d4007d5148
Fix Go tpl expressions breaking in Visual editor HTML.
...
Closes #2593 .
Closes #2499 .
2025-09-09 22:29:46 +05:30
Kailash Nadh
deb41f8d1c
Add i18n translation helper script.
2025-09-09 22:28:34 +05:30
Kailash Nadh
81d05e4dd6
Suppress optin e-mail send errors on subscriber insert/edit APIs.
2025-09-09 21:12:01 +05:30
Kailash Nadh
fcbebc272b
Update Cypress trests on the campaign file attach UI.
2025-09-09 00:15:03 +05:30
dependabot[bot]
e8b0eafc00
Bump github.com/go-viper/mapstructure/v2 from 2.3.0 to 2.4.0 ( #2634 )
...
Bumps [github.com/go-viper/mapstructure/v2](https://github.com/go-viper/mapstructure ) from 2.3.0 to 2.4.0.
- [Release notes](https://github.com/go-viper/mapstructure/releases )
- [Changelog](https://github.com/go-viper/mapstructure/blob/main/CHANGELOG.md )
- [Commits](https://github.com/go-viper/mapstructure/compare/v2.3.0...v2.4.0 )
---
updated-dependencies:
- dependency-name: github.com/go-viper/mapstructure/v2
dependency-version: 2.4.0
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-08 18:30:21 +05:30
Kailash Nadh
301c13a60d
Add optional subject param to tx API. Closes #2333 .
2025-09-08 18:21:12 +05:30
Kailash Nadh
ad66878ea0
Fix list action icons not showing on the UI based on permissions. Closes #2640 .
2025-09-08 17:52:44 +05:30
Kailash Nadh
fbe4c5c9e7
Make session cookie samesite to prevent CSRF requests.
2025-09-08 17:52:13 +05:30
Tobias Wiesing
ea88b94413
Add link for n8n node ( #2649 )
2025-09-03 11:23:18 +05:30
Kailash Nadh
7d38890868
Change OIDC init to lazy-load instead of loading once on boot. Fixes #2626 .
2025-08-18 19:10:19 +05:30
Kailash Nadh
961116468b
Refresh i18n language files.
2025-08-16 16:57:32 +05:30
Kailash Nadh
09d291e119
Add support for built-in ALTCHA CAPTCHA implementation.
...
The existing hCaptcha implementation as the only CAPTCHA option isn't ideal
as hCaptcha is a proprietary SaaS provider. This commit adds supports for
ALTCHA (altcha.org) a self-contained "proof-of-work" based CAPTCHA option.
Closes #2243 .
2025-08-16 16:48:20 +05:30
Kailash Nadh
38387d0079
Fix List-Unsubscribe header incorrectly sent on opt-in confirmation. Closes #2619 .
2025-08-10 14:32:50 +05:30
Kailash Nadh
eef0021366
Add support for loading secrets from *_FILE env vars in Docker environment.
...
Closes #2455 .
Co-Authored-By: Michael Redig <mredig@gmail.com>
2025-08-09 14:41:13 +05:30
dependabot[bot]
4a93184c7e
Bump tmp from 0.2.3 to 0.2.4 in /frontend ( #2617 )
...
Bumps [tmp](https://github.com/raszi/node-tmp ) from 0.2.3 to 0.2.4.
- [Changelog](https://github.com/raszi/node-tmp/blob/master/CHANGELOG.md )
- [Commits](https://github.com/raszi/node-tmp/compare/v0.2.3...v0.2.4 )
---
updated-dependencies:
- dependency-name: tmp
dependency-version: 0.2.4
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-09 13:25:12 +05:30
Kailash Nadh
ad67fc62a6
Refactor landing page on the website.
...
- Clean up sections.
- Add OS logos for binary downloads.
2025-08-05 00:04:57 +05:30
Kailash Nadh
4d74cf4520
Tweak log viewer to optionally hide filename from log lines (on the import UI).
2025-08-03 19:17:53 +05:30