Kailash Nadh
3711bed98d
Fix clipboard copy prop on template form.
2024-01-06 19:19:27 +05:30
Kailash Nadh
bd2990fb02
Add F9 shortcut key for toggling campaign and template previews.
2024-01-06 19:17:27 +05:30
Kailash Nadh
234fd11f13
Fix incorrect label on maintenance UI. Closes #1652 .
2024-01-06 12:11:40 +05:30
Kailash Nadh
0c9dc07479
Add a ?v=hash
cache breaker (that changes on restart) to static assets.
2023-12-31 22:20:37 +05:30
Kailash Nadh
a2629c2c31
Make all ID/UUID labels on the UI onclick -> clipboard copy.
2023-12-31 21:39:19 +05:30
Kailash Nadh
b946c33e61
Fix broken chart components.
2023-12-30 23:00:20 +05:30
Kailash Nadh
2feb1b0fb8
Make the name part in from
e-mails optional. Closes #1602 .
2023-12-30 21:48:12 +05:30
Kailash Nadh
0d74619cac
Make providing name
in subscriber creation optional and assign internally. Closes #1630 .
2023-12-30 15:51:42 +05:30
Kailash Nadh
a9a715696a
Scroll TinyMCE richtext editor back to caret on dialog close. Closes #1635 .
2023-12-29 23:01:51 +05:30
Kailash Nadh
db17fa1451
Restore tab selection on campaign page on reload.
2023-12-29 22:51:53 +05:30
Kailash Nadh
ef77a7e10f
Replace c3js with chart.js for major dep size reduction.
2023-12-29 22:17:53 +05:30
Kailash Nadh
af8b420d53
Refactor and upgrade the frontend vue code to work with vite instead of webpack.
...
- Upgrade eslint and fix a massive number (~2500!) of linting errors from new rules.
- Upgrade babel core frontend dev dependency.
- Upgrade UI lib and other frontend deps.
- Refactor the Vue admin app to use `vite` instead of `webpack`.
- This was an extremely tedious and painstaking, trial-and-error
alchemy job. My disdain for the Javascript "ecosystem" grows.
- Re-add custom admin appearance endpoints to the refactored Vue page.
- Remove obsolete vue-cli config.
- Re-auto-format all .vue files again to work with new linters.
2023-12-25 19:26:08 +05:30
Kailash Nadh
51af75cfef
Add subscription status filter to subscriber list query and admin UI.
2023-12-23 16:43:28 +05:30
Kailash Nadh
8f12c03a8a
Fix newly created lists not showing up on other pages automatically. Closes #1589 .
2023-12-23 14:59:05 +05:30
Kailash Nadh
c468e7ae71
Upgrade Cypress to latest version.
2023-12-23 14:44:50 +05:30
dependabot[bot]
524be2753b
Bump tinymce from 5.10.8 to 5.10.9 in /frontend ( #1592 )
...
Bumps [tinymce](https://github.com/tinymce/tinymce/tree/HEAD/modules/tinymce ) from 5.10.8 to 5.10.9.
- [Changelog](https://github.com/tinymce/tinymce/blob/5.10.9/modules/tinymce/CHANGELOG.md )
- [Commits](https://github.com/tinymce/tinymce/commits/5.10.9/modules/tinymce )
---
updated-dependencies:
- dependency-name: tinymce
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-21 11:07:08 +05:30
Kailash Nadh
c59825f3a5
Fix broken sorting (lists -> subcount, subscribers -> status) in queries. Closes #1076 .
2023-11-12 10:29:32 +05:30
Kailash Nadh
06b4494200
Fix incorrect sanitisation of search queries on list/campaign frontend.
2023-11-12 10:29:32 +05:30
dependabot[bot]
d439ecfd84
Bump axios from 0.27.2 to 1.6.0 in /frontend ( #1587 )
...
Bumps [axios](https://github.com/axios/axios ) from 0.27.2 to 1.6.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/v0.27.2...v1.6.0 )
---
updated-dependencies:
- dependency-name: axios
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-11 20:31:09 +05:30
Kailash Nadh
62be5e2181
Fix mysteriously broken frontend build by switching eslint parser dep.
2023-11-11 15:56:42 +05:30
dependabot[bot]
ccceaa6e92
Bump @babel/traverse from 7.21.3 to 7.23.2 in /frontend ( #1563 )
...
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse ) from 7.21.3 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases )
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md )
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse )
---
updated-dependencies:
- dependency-name: "@babel/traverse"
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-31 11:04:57 +05:30
dependabot[bot]
c7882bb220
Bump tinymce from 5.10.7 to 5.10.8 in /frontend ( #1564 )
...
Bumps [tinymce](https://github.com/tinymce/tinymce/tree/HEAD/modules/tinymce ) from 5.10.7 to 5.10.8.
- [Changelog](https://github.com/tinymce/tinymce/blob/5.10.8/modules/tinymce/CHANGELOG.md )
- [Commits](https://github.com/tinymce/tinymce/commits/5.10.8/modules/tinymce )
---
updated-dependencies:
- dependency-name: tinymce
dependency-type: direct:production
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-31 11:04:51 +05:30
Kailash Nadh
2b95c88188
Add Postmark bounce webhook support (refactor #1385 ) ( #1485 )
...
Co-authored-by: Thomas Siebers <tom@tsiebers.de>
2023-08-31 21:27:34 +05:30
Kailash Nadh
83c88d73d7
Escape search query in list search. Closes #1471 .
2023-08-27 14:35:42 +05:30
Kailash Nadh
6af904dbd4
Lowercase email search on UI to match lowercase email index in DB. Closes #1464 .
2023-08-27 12:17:50 +05:30
Kailash Nadh
79ff7293ea
Fix broken dummy password warning on SMTP test UI. Closes #1450 .
2023-08-15 20:57:58 +05:30
Kailash Nadh
0562e5de8d
Apply minor fixes to the admin maintenance page template.
2023-08-08 00:07:21 +05:30
Kailash Nadh
acca61f2ca
Fix race conditions in Cypress tests (sigh).
2023-08-06 21:25:19 +05:30
Kailash Nadh
1164afac5e
Fix private lists being unsubscribed from public form and re-factor subscription status view in admin.
2023-08-06 21:09:16 +05:30
Kailash Nadh
93db7c45bc
Fix incorrect Buefy checkbox colour.
2023-07-26 23:15:20 +05:30
Kailash Nadh
ad80c716f9
Add new privacy option 'Record opt-in IP' to record IP address of optin confirmation.
...
- Add new 'Subscriptions' table on the subscriber list form that shows subs,
IP, and other data.
- Add new `meta` JSONB field to `subscriber_lsts` table.
Closes #1329 .
2023-07-26 23:00:32 +05:30
Kailash Nadh
b26950c427
Add new subscription list table to the subscriber edit UI modal.
2023-07-22 16:23:57 +05:30
Kailash Nadh
a62851915c
Mask passwords on the UI accurately with the actual passwords length.
...
This PR masks all the password fields in the UI with a pseudo dot character
retaining the rune length of the original password so that the password
fields on the UI appear to be containing the entered value as-is.
The earlier implementation would revert to a fixed length dummy password
confusing certain users and making it look like the password they entered
wasn't being saved.
2023-07-21 23:46:46 +05:30
Kailash Nadh
0be5901df7
Fix lists UI queries overriding full lists in selections elsewhere. Closes #1400 .
2023-07-20 23:46:00 +05:30
Kailash Nadh
534c87509a
Ignore common on-reload xhr errors in Cypress.
2023-07-20 23:41:53 +05:30
dependabot[bot]
7dd7166bcf
Bump word-wrap from 1.2.3 to 1.2.4 in /frontend ( #1403 )
...
Bumps [word-wrap](https://github.com/jonschlinkert/word-wrap ) from 1.2.3 to 1.2.4.
- [Release notes](https://github.com/jonschlinkert/word-wrap/releases )
- [Commits](https://github.com/jonschlinkert/word-wrap/compare/1.2.3...1.2.4 )
---
updated-dependencies:
- dependency-name: word-wrap
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-19 15:03:17 +05:30
dependabot[bot]
1894af121f
Bump semver from 5.7.1 to 5.7.2 in /frontend ( #1398 )
...
Bumps [semver](https://github.com/npm/node-semver ) from 5.7.1 to 5.7.2.
- [Release notes](https://github.com/npm/node-semver/releases )
- [Changelog](https://github.com/npm/node-semver/blob/v5.7.2/CHANGELOG.md )
- [Commits](https://github.com/npm/node-semver/compare/v5.7.1...v5.7.2 )
---
updated-dependencies:
- dependency-name: semver
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-12 10:24:56 +05:30
Kailash Nadh
0b2da4c664
Add support for streaming async events via HTTP serverside events.
...
- `GET /api/events?type=error` opens a long-lived HTTP server side
event connection that streams error messages.
- async (typically SMTP) errors are now streamed to the frontend and
disaplyed as an error toast on the admin UI.
2023-05-27 15:44:59 +05:30
Kailash Nadh
d359ad27aa
Refactor media management.
...
- Change tiled UI to table UI.
- Add support for search and pagination.
- Important: This breaks the `GET /api/media` API to introduce pagination
fields. Media items are now moved into `{ data: results[] }`.
2023-05-21 15:19:12 +05:30
Kailash Nadh
3b9a0f782e
Add support for file attachments on campaigns ( #1341 )
...
- Adds support for arbitrary file uploads with an admin setting to select allowed file extensions.
- Adds support for attaching media (files) to campaigns.
2023-05-18 16:55:59 +05:30
Kailash Nadh
5fc28a733c
Add support for variable bounce processing actions.
...
- Add support for `complaint` to the SES bounce processor.
- Add support for `hard/soft` to Sendgrid bounce processor.
- Add new bounce actions `None` and `Unsubscribe`.
- Add per type (`soft/hard/complaint`) bounce rule configuration to
admin settings UI.
- Refactor Cypress bounce tests.
2023-04-11 11:33:40 +05:30
Justin Beaty
476d5bebf2
Add support for publishing full content in public archive RSS feed body ( #1262 )
...
- Introduces a new option on the settings UI to optionally publish the full campaign body in
public archive RSS feeds.
Closes #1033
Co-authored-by: Kailash Nadh <kailash@nadh.in>
2023-04-08 09:39:10 +05:30
peix187
146e8e7a63
Add missing translation message in maintenance page ( #1279 )
2023-04-08 08:48:40 +05:30
Kailash Nadh
d87a01fad8
Include CAPTCHA in HTML form generation.
2023-03-25 11:21:06 +05:30
Vivek R
c668523c57
upgrade frontend dev deps to support node v17+ ( #1247 )
...
Used `vue-cli` to upgrade all the dev deps from node v16 or lower. Here
are the steps followed
- `vue upgrade` to upgrade all deps to latest.
- remove `node_modules` directory and `yarn.lock` file.
- `yarn install` to install dependencies again.
2023-03-20 17:57:51 +05:30
Kailash Nadh
1bb9123333
Fix Cypress tests (settings security tab, new default tpls).
2023-03-19 22:58:38 +05:30
Kailash Nadh
6cf82347bf
Add support for SVG files to media. Closes #1217 .
...
- Add support for SVG in media uploader.
- Add provision to exclude vector formats from thumbnail creation.
- Increase default thumb size to 120px from 90px.
Co-authored-by: Ronan <ronan.le_meillat@sctg.eu.org>
2023-03-19 13:58:41 +05:30
Ronan LE MEILLAT
8d1f30c101
correct eslint "no-multiple-empty-lines" ( #1179 )
2023-02-27 14:46:57 +05:30
Kailash Nadh
d6fd4ab586
Fix 'delete' -> 'clear' language on bounces UI. Closes #1072 .
2023-02-26 13:19:00 +05:30
dependabot[bot]
fd655312ab
Bump decode-uri-component from 0.2.0 to 0.2.2 in /frontend ( #1084 )
...
Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component ) from 0.2.0 to 0.2.2.
- [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases )
- [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2 )
---
updated-dependencies:
- dependency-name: decode-uri-component
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-28 14:00:18 +05:30