-
-
Notifications
You must be signed in to change notification settings - Fork 222
Updates_31072025 #554
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
prabhuignoto
wants to merge
71
commits into
master
Choose a base branch
from
updates_31072025
base: master
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.
+373,951
−183,043
Open
Updates_31072025 #554
Changes from 15 commits
Commits
Show all changes
71 commits
Select commit
Hold shift + click to select a range
1e71366
refactor: enhance React hooks performance and modularity
gcodeprabhu 2da7504
refactor: improve toolbar UX with flex-wrap layout and enhanced styling
gcodeprabhu 1bd44d7
fix: improve search focus and dark mode text colors
gcodeprabhu be92e78
updated configs for eslint, tsconfig, prettier
gcodeprabhu fff9958
recreted pnpm.lock
gcodeprabhu 4d39234
fixed test cases
gcodeprabhu 3a541f3
feat: add fullscreen functionality with consistent button sizing and …
gcodeprabhu 25097be
feat: improve slideshow UX with proper card scrolling and link-style …
gcodeprabhu 09124d9
feat: migrate from Cypress to Playwright for E2E testing
gcodeprabhu ccff0b7
feat: add comprehensive E2E test coverage for all timeline features
gcodeprabhu a2d06a0
- Add comprehensive theme validation tests with edge case coverage …
gcodeprabhu 6325e67
- Add new Technology Evolution Timeline showcasing 53+ years of tech …
gcodeprabhu 4699a17
fix(tests): resolve Playwright test failures and optimize browser con…
gcodeprabhu 38cac8a
trigger deploy
gcodeprabhu ef2f30b
fixed the lock file
gcodeprabhu 0d83408
removing cypress as we are moving over to playwright
gcodeprabhu 4524219
regen lock file
gcodeprabhu 017f3ec
fix pnpm versions on workflows
gcodeprabhu d1ec4ec
fix pnpm workflow
gcodeprabhu 69a4411
fix lock version
gcodeprabhu 1deba4e
Update pnpm lockfile version and streamline Playwright workflow
gcodeprabhu 573a0f5
Refactor timeline components to unify context management and enhance …
gcodeprabhu 19cb7f0
Update Playwright workflow to remove Firefox from browser matrix
gcodeprabhu 50786f7
Enhance timeline navigation and scrolling experience
gcodeprabhu 96aad48
Enhance focus management and accessibility in timeline components
gcodeprabhu ae98db6
Refactor timeline components for improved visibility and focus manage…
gcodeprabhu 64e6067
Refactor context management and update dependencies for timeline comp…
gcodeprabhu ddf9942
Refactor timeline components for improved focus management and access…
gcodeprabhu ffe295b
Add configuration files and enhance project structure for improved de…
gcodeprabhu 4c9e91f
Update CI and release workflows to use Node.js version 22 and remove …
gcodeprabhu 62c07c7
Implement migration to vanilla-extract for styling and enhance ESLint…
gcodeprabhu 0b42699
Refactor timeline components and styles for improved maintainability …
gcodeprabhu fb15b24
Enhance timeline component styles and functionality
gcodeprabhu a199ca9
Enhance timeline components with improved styling and focus management
gcodeprabhu 980952b
feat(toolbar): flip to Vanilla Extract by default and remove styled-c…
gcodeprabhu cacab00
chore(toolbar): remove styled-components toolbar.styles.ts after VE flip
gcodeprabhu a8f60f1
refactor(timeline): enhance styling and accessibility features
gcodeprabhu 99893b5
feat(timeline): enhance timeline UX with sticky toolbar, continuous l…
gcodeprabhu c342c4a
feat: enhance text overlay with minimize/maximize controls and fix al…
gcodeprabhu ff139b8
fix(types): resolve TypeScript strict mode errors across components
gcodeprabhu 8a12eaa
refactor(config): update vanilla-extract plugin identifiers for envir…
gcodeprabhu 6f7faa5
feat: complete migration from styled-components to vanilla-extract
gcodeprabhu c406a73
fix: resolve nested timeline rendering and icon positioning issues
gcodeprabhu 1813ac2
refactor: remove unused style files post vanilla-extract migration
gcodeprabhu 8387e37
refactor: remove unused styles and consolidate CSS architecture
gcodeprabhu ce9c04d
chore: remove unused configuration files and documentation
gcodeprabhu ff4dcac
feat: enhance timeline components with improved UI controls and
gcodeprabhu fea1deb
fix: implement proper responsive breakpoint behavior for vertical
gcodeprabhu 10d8e87
refactor: replace conditional prop spreading with pickDefined utility
gcodeprabhu 843fab2
- Replace verbose `{...(condition ? { prop: value } : {})}` pattern w…
gcodeprabhu ece20ac
feat: enhance horizontal timeline with smaller points and improved
gcodeprabhu 5aa233c
- Improve font color handling in both normal and text overlay modes
gcodeprabhu 6fbfc17
fix: improve popover positioning and menu item UX
gcodeprabhu b3c7ba9
refactor: modernize icon components and migrate styles to vanilla-ext…
gcodeprabhu b97c829
fix: resolve slideshow and keyboard navigation issues with comprehens…
gcodeprabhu 6bf1d47
fix: resolve slideshow media deadlock and standardize icon dimensions
gcodeprabhu ea77b95
feat: enhance accessibility and fix navigation issues
gcodeprabhu 4a8a27d
feat: add light and dark theme implementations with extensive design …
gcodeprabhu c4bad56
feat: implement sticky toolbar functionality across timeline components
gcodeprabhu 27dd6d7
chore: update Node.js version to 22.x and pnpm version to 10.15.1 acr…
gcodeprabhu c191122
feat: add stylelint configuration and implement sticky toolbar featur…
gcodeprabhu 57b04b5
feat: Add Google Fonts integration with FontProvider and utility func…
gcodeprabhu 50ceef6
feat: Integrate Google Fonts support across components and update typ…
gcodeprabhu 44811c8
Refactor theme styles and improve code formatting
gcodeprabhu 377f181
refactor: update timeline test locators and improve assertions for be…
gcodeprabhu b2f9c87
fix: adjust performance test timeouts and improve compatibility for F…
gcodeprabhu 8350261
feat: Add customizable toolbar search configuration and position
gcodeprabhu 4319820
refactor: Improve list item layout and styles for better responsivene…
gcodeprabhu e52e1b0
Add comprehensive tests for timeline props and related test data
gcodeprabhu 77d6318
feat: Complete demo site redesign with modern UX and full-width layout
gcodeprabhu 70ffdfb
feat: Enhance toolbar search configuration and update documentation
gcodeprabhu 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 |
---|---|---|
@@ -0,0 +1,127 @@ | ||
name: Playwright Tests | ||
on: | ||
push: | ||
branches: [ main, master, develop ] | ||
pull_request: | ||
branches: [ main, master, develop ] | ||
workflow_dispatch: | ||
|
||
jobs: | ||
test: | ||
timeout-minutes: 60 | ||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
browser: [chromium, firefox, webkit] | ||
shard: [1, 2, 3, 4] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- uses: pnpm/action-setup@v2 | ||
with: | ||
version: 8 | ||
|
||
- uses: actions/setup-node@v4 | ||
with: | ||
node-version: 20 | ||
cache: 'pnpm' | ||
|
||
- name: Get pnpm store directory | ||
id: pnpm-cache | ||
shell: bash | ||
run: | | ||
echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT | ||
|
||
- uses: actions/cache@v3 | ||
name: Setup pnpm cache | ||
with: | ||
path: ${{ steps.pnpm-cache.outputs.STORE_PATH }} | ||
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | ||
restore-keys: | | ||
${{ runner.os }}-pnpm-store- | ||
|
||
- name: Install dependencies | ||
run: pnpm install --frozen-lockfile | ||
|
||
- name: Install Playwright Browsers | ||
run: pnpm exec playwright install --with-deps ${{ matrix.browser }} | ||
|
||
- name: Run Playwright tests | ||
run: pnpm exec playwright test --project=${{ matrix.browser }} --shard=${{ matrix.shard }}/4 | ||
env: | ||
CI: true | ||
|
||
- name: Upload test results | ||
uses: actions/upload-artifact@v4 | ||
if: always() | ||
with: | ||
name: playwright-results-${{ matrix.browser }}-${{ matrix.shard }} | ||
path: | | ||
playwright-report/ | ||
test-results/ | ||
retention-days: 30 | ||
|
||
test-components: | ||
timeout-minutes: 30 | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- uses: pnpm/action-setup@v2 | ||
with: | ||
version: 8 | ||
|
||
- uses: actions/setup-node@v4 | ||
with: | ||
node-version: 20 | ||
cache: 'pnpm' | ||
|
||
- name: Install dependencies | ||
run: pnpm install --frozen-lockfile | ||
|
||
- name: Install Playwright | ||
run: pnpm exec playwright install --with-deps chromium | ||
|
||
- name: Run component tests | ||
run: pnpm exec playwright test -c playwright-ct.config.ts | ||
|
||
- name: Upload component test results | ||
uses: actions/upload-artifact@v4 | ||
if: always() | ||
with: | ||
name: playwright-ct-results | ||
path: | | ||
playwright-ct-report/ | ||
test-results/ | ||
retention-days: 30 | ||
|
||
report: | ||
Check warningCode scanning / CodeQL Workflow does not contain permissions Medium
Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
|
||
needs: [test, test-components] | ||
if: always() | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
|
||
- uses: actions/download-artifact@v4 | ||
with: | ||
path: all-results | ||
pattern: playwright-* | ||
|
||
- name: Merge reports | ||
run: | | ||
npx playwright merge-reports --reporter html ./all-results/playwright-results-* | ||
|
||
- name: Upload merged report | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: playwright-report | ||
path: playwright-report/ | ||
retention-days: 30 | ||
|
||
- name: Deploy to GitHub Pages | ||
if: github.ref == 'refs/heads/main' | ||
uses: peaceiris/actions-gh-pages@v3 | ||
with: | ||
github_token: ${{ secrets.GITHUB_TOKEN }} | ||
publish_dir: ./playwright-report | ||
Comment on lines
+88
to
+115
Check warningCode scanning / CodeQL Workflow does not contain permissions Medium
Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}
|
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,103 @@ | ||
# Playwright Package.json Updates | ||
|
||
Add these scripts to your package.json: | ||
|
||
```json | ||
{ | ||
"scripts": { | ||
"test:e2e": "playwright test", | ||
"test:e2e:debug": "playwright test --debug", | ||
"test:e2e:ui": "playwright test --ui", | ||
"test:e2e:headed": "playwright test --headed", | ||
"test:e2e:chrome": "playwright test --project=chromium", | ||
"test:e2e:firefox": "playwright test --project=firefox", | ||
"test:e2e:webkit": "playwright test --project=webkit", | ||
"test:e2e:mobile": "playwright test --project='Mobile Chrome' --project='Mobile Safari'", | ||
"test:ct": "playwright test -c playwright-ct.config.ts", | ||
"test:ct:ui": "playwright test -c playwright-ct.config.ts --ui", | ||
"test:report": "playwright show-report", | ||
"test:trace": "playwright show-trace", | ||
"test:install": "playwright install --with-deps", | ||
"test:codegen": "playwright codegen", | ||
"test:update-snapshots": "playwright test --update-snapshots", | ||
"test:ci": "playwright test --reporter=github --reporter=html", | ||
"test:shard": "playwright test --shard=$SHARD" | ||
}, | ||
"devDependencies": { | ||
"@playwright/test": "^1.40.0", | ||
"@playwright/experimental-ct-react": "^1.40.0" | ||
} | ||
} | ||
``` | ||
|
||
## Installation Commands | ||
|
||
```bash | ||
# Install Playwright | ||
pnpm add -D @playwright/test @playwright/experimental-ct-react | ||
|
||
# Install browsers | ||
pnpm exec playwright install --with-deps | ||
|
||
# Or install specific browsers only | ||
pnpm exec playwright install chromium firefox webkit | ||
``` | ||
|
||
## Running Tests | ||
|
||
```bash | ||
# Run all E2E tests | ||
pnpm test:e2e | ||
|
||
# Run in UI mode (recommended for development) | ||
pnpm test:e2e:ui | ||
|
||
# Run component tests | ||
pnpm test:ct | ||
|
||
# Run specific test file | ||
pnpm test:e2e tests/e2e/timeline-horizontal.spec.ts | ||
|
||
# Run tests in headed mode | ||
pnpm test:e2e:headed | ||
|
||
# Run only Chrome tests | ||
pnpm test:e2e:chrome | ||
|
||
# Generate new tests with codegen | ||
pnpm test:codegen http://localhost:4444 | ||
|
||
# Update visual snapshots | ||
pnpm test:update-snapshots | ||
|
||
# View test report | ||
pnpm test:report | ||
|
||
# View trace file | ||
pnpm test:trace trace.zip | ||
``` | ||
|
||
## Debugging | ||
|
||
```bash | ||
# Debug mode with Playwright Inspector | ||
pnpm test:e2e:debug | ||
|
||
# Run with verbose logging | ||
DEBUG=pw:api pnpm test:e2e | ||
|
||
# Run single test in debug mode | ||
pnpm test:e2e:debug -g "should display correct number of timeline items" | ||
``` | ||
|
||
## CI/CD | ||
|
||
```bash | ||
# Run in CI mode with GitHub Actions reporter | ||
pnpm test:ci | ||
|
||
# Run with sharding (for parallel CI) | ||
SHARD=1/4 pnpm test:shard | ||
SHARD=2/4 pnpm test:shard | ||
# etc... | ||
``` |
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.