Repository navigation
Dev #92
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
TatevikGr
wants to merge
53
commits into
main
Choose a base branch
from
dev
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Dev #92
Changes from all commits
Commits
Show all changes
53 commits
Select commit
Hold shift + click to select a range
0e57640
Refactor: env (#91)
TatevikGr 88c00fc
use dev branch for core
tatevikg1 cbf56ab
feat: enhance template error handling with field-specific validation …
tatevikg1 20b89db
Update openapi.json from web frontend workflow 2026-08-04T12:38:04Z
34972eb
feat: add cursor pointer to buttons for better user interaction
tatevikg1 c0437c6
Merge branch 'dev' of github.com:phpList/web-frontend into dev
tatevikg1 f2dd0dc
chore: update @symfony/webpack-encore and other dependencies in packa…
tatevikg1 48707a2
feat: add cursor pointer style to interactive buttons globally
tatevikg1 dab6039
feat: add dark mode
tatevikg1 b62c256
feat: add JSON manifest path and enable versioning in webpack configu…
tatevikg1 08380af
feat: set custom session name in framework configuration
tatevikg1 1b1b7b4
Update openapi.json from web frontend workflow 2026-08-17T08:24:03Z
0507986
feat: update dashboard statistics handling to use new API responses
tatevikg1 bb2b810
fix: response structure in dashboard controller tests
tatevikg1 7e4053b
Update openapi.json from web frontend workflow 2026-08-20T11:04:47Z
cae1e63
feat: implement pagination and filtering for campaigns in CampaignDir…
tatevikg1 db3a633
feat: add exception logging configuration for NotFoundHttpException i…
tatevikg1 d6f365a
feat: refactor dashboard to load statistics from API and pass summary…
tatevikg1 f633d01
feat: refactor dashboard data handling into a composable for improved…
tatevikg1 e185992
feat: return JSON response for expired session in AJAX requests
tatevikg1 2bfca6f
feat: refactor analytics data loading into a composable for improved …
tatevikg1 3e41f56
Update openapi.json from web frontend workflow 2026-09-09T15:21:57Z
6af8a03
feat: add Stuck Campaigns view and list components for managing (#104)
TatevikGr 4d4f08c
feat: refactor dashboard to improve loading state handling and remove…
tatevikg1 153cd4a
feat: enhance dashboard components with independent loading and error…
tatevikg1 e2eab5f
feat: implement loading indicators for analytics and subscriber direc…
tatevikg1 6127634
Revert "feat: implement loading indicators for analytics and subscrib…
tatevikg1 e48ce4c
feat: increase API client timeout to 90 seconds
tatevikg1 026d10c
ref: comment out admin data fetching logic in AdminLayout
tatevikg1 9e1fb40
Update openapi.json from web frontend workflow 2026-09-23T18:30:41Z
ed9de5c
Update openapi.json from web frontend workflow 2026-09-24T12:52:13Z
0d0f700
Update openapi.json from web frontend workflow 2026-09-28T10:13:24Z
1559c00
Refactor vue components (#105)
TatevikGr 800a3e9
feat: add build scripts for dist output
tatevikg1 8c3b134
Update openapi.json from web frontend workflow 2026-10-01T07:09:22Z
b12f6fe
feat: update rest-api-client to version 2.2.4 and adjust analytics da…
tatevikg1 7b3479d
feat: update domain confirmation display in AnalyticsView and upgrade…
tatevikg1 5464317
Merge branch 'dev' of github.com:phpList/web-frontend into dev
tatevikg1 d89804a
fix test
tatevikg1 4246947
feat: update duration formatting in StuckCampaignsList to include days
tatevikg1 70adbf8
feat: error handling and validation feedback
tatevikg1 d164059
feat: conditionally render analytics section
tatevikg1 8d1fe3c
Update openapi.json from web frontend workflow 2026-10-09T13:45:16Z
d56e930
feat: conditionally render analytics section
tatevikg1 b1414f7
feat: conditionally render buttons
tatevikg1 ee5052b
Merge branch 'dev' of github.com:phpList/web-frontend into dev
tatevikg1 703fe21
feat: update entrypoints and manifest with new build assets
tatevikg1 8a36aec
feat: add pre-push hook to verify dist build is up to date
tatevikg1 d89d139
feat: add toggle visibility feature for password input on login page
tatevikg1 5b502d6
feat: implement forgot password and reset password functionality
tatevikg1 00ca62e
fix: tests
tatevikg1 c5a13d8
fix: update token retrieval for password reset functionality
tatevikg1 4a0d810
Update openapi.json from web frontend workflow 2026-10-16T16:06:06Z
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -18,3 +18,4 @@ | |
| /node_modules | ||
| /drivers/ | ||
| .codex | ||
| .claude/ | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| #!/bin/sh | ||
| . "$(dirname "$0")/_/husky.sh" | ||
|
|
||
| echo "🏗 Rebuilding dist to verify it's up to date..." | ||
| yarn build:dist || exit 1 | ||
|
|
||
| if ! git diff --quiet -- dist/ || [ -n "$(git ls-files --others --exclude-standard dist/)" ]; then | ||
| echo "❌ dist/ is out of date. Rebuild produced changes:" | ||
| git status --porcelain -- dist/ | ||
| echo "Commit the updated dist/ before pushing." | ||
| exit 1 | ||
| fi | ||
|
|
||
| echo "✅ dist/ is up to date." |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,47 @@ | ||
| <!-- assets/vue/components/base/ActionButton.vue --> | ||
| <template> | ||
| <button | ||
| type="button" | ||
| :class="buttonClass" | ||
| v-bind="$attrs" | ||
| > | ||
| <BaseIcon v-if="icon" :name="icon" class="w-3.5 h-3.5" /> | ||
| <slot /> | ||
| </button> | ||
| </template> | ||
|
|
||
| <script setup> | ||
| import { computed } from 'vue' | ||
| import BaseIcon from './BaseIcon.vue' | ||
|
|
||
| const props = defineProps({ | ||
| variant: { | ||
| type: String, | ||
| default: 'neutral' // neutral | danger | success | info | warning | ||
| }, | ||
| icon: { | ||
| type: String, | ||
| default: '' | ||
| }, | ||
| block: { | ||
| type: Boolean, | ||
| default: false // centers content, for full-width mobile buttons | ||
| } | ||
| }) | ||
|
|
||
| const variantClassMap = { | ||
| neutral: 'border-slate-300 dark:border-slate-600 text-slate-700 dark:text-slate-200 hover:bg-slate-50 dark:hover:bg-slate-700', | ||
| danger: 'border-red-200 dark:border-red-500/20 text-red-600 dark:text-red-400 hover:bg-red-50 dark:hover:bg-red-500/10', | ||
| success: 'border-emerald-200 dark:border-emerald-500/20 text-emerald-700 dark:text-emerald-400 hover:bg-emerald-50 dark:hover:bg-emerald-500/10', | ||
| info: 'border-blue-200 dark:border-blue-500/20 text-blue-700 dark:text-blue-400 hover:bg-blue-50 dark:hover:bg-blue-500/10', | ||
| warning: 'border-amber-200 dark:border-amber-500/20 text-amber-600 dark:text-amber-400 hover:bg-amber-50 dark:hover:bg-amber-500/10' | ||
| } | ||
|
|
||
| const buttonClass = computed(() => { | ||
| const base = 'inline-flex items-center gap-1 px-2.5 py-1.5 text-xs font-medium rounded-md border transition-colors disabled:opacity-60' | ||
| const justify = props.block ? 'justify-center' : '' | ||
| const variant = variantClassMap[props.variant] || variantClassMap.neutral | ||
|
|
||
| return [base, justify, variant].filter(Boolean).join(' ') | ||
| }) | ||
| </script> |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.