Skip to content

feat(docs): consent banner + vue-privacy 1.2.2 with gtag fix#255

Merged
polaz merged 3 commits intomainfrom
feat/#219-vue-privacy-integration
Jan 31, 2026
Merged

feat(docs): consent banner + vue-privacy 1.2.2 with gtag fix#255
polaz merged 3 commits intomainfrom
feat/#219-vue-privacy-integration

Conversation

@polaz
Copy link
Copy Markdown
Member

@polaz polaz commented Jan 31, 2026

Summary

  • Add ConsentBanner component to layout-bottom slot (fixes banner not rendering)
  • Update @structured-world/vue-privacy from 1.1.0 → 1.2.2:
    • fix(gtag): use arguments instead of Array in dataLayer.push — GA4 collect requests were never sent
    • fix(core): resolve consent banner race condition (bannerPending deferred show)

Related to #219

- Add ConsentBanner to layout-bottom slot (fixes banner not showing)
- Update @structured-world/vue-privacy ^1.1.0 → ^1.2.2
  - Fixes gtag dataLayer.push using Array instead of Arguments
  - Fixes consent banner race condition (bannerPending)
Copilot AI review requested due to automatic review settings January 31, 2026 20:46
@github-actions
Copy link
Copy Markdown

Test Coverage Report

Overall Coverage: 95.56%

Metric Percentage
Statements 95.01%
Branches 85.72%
Functions 94.63%
Lines 95.56%

View detailed coverage report

@codecov
Copy link
Copy Markdown

codecov bot commented Jan 31, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request adds GDPR-compliant cookie consent functionality to the VitePress documentation site by integrating the @structured-world/vue-privacy package (v1.2.2). The update includes critical bug fixes for Google Analytics tracking and resolves a banner rendering issue by adding the ConsentBanner component to the layout.

Changes:

  • Update @structured-world/vue-privacy from 1.1.0 to 1.2.2 with bug fixes for GA4 gtag and banner race conditions
  • Replace manual Google Analytics implementation with enhanceWithConsent wrapper
  • Add ConsentBanner component to the layout-bottom slot alongside the existing BugReportWidget

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated 3 comments.

File Description
package.json Add @structured-world/vue-privacy v1.2.2 to devDependencies
yarn.lock Update lockfile with new package version and peer dependency metadata
docs/.vitepress/theme/index.ts Replace manual GA implementation with vue-privacy integration and add ConsentBanner to layout

- Add comment that /api/consent is served by Cloudflare Worker
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 3 changed files in this pull request and generated 2 comments.

consentTheme may provide its own Layout — using DefaultTheme.Layout
directly bypasses consent-aware layout enhancements.
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 3 changed files in this pull request and generated no new comments.

@polaz polaz merged commit 75eb54b into main Jan 31, 2026
23 of 24 checks passed
@polaz polaz deleted the feat/#219-vue-privacy-integration branch January 31, 2026 21:07
sw-release-bot bot pushed a commit that referenced this pull request Feb 2, 2026
## [6.51.0](v6.50.0...v6.51.0) (2026-02-02)

### Features

* **docs:** consent banner + vue-privacy 1.2.2 with gtag fix ([#255](#255)) ([75eb54b](75eb54b))

### Bug Fixes

* **ci:** prevent transitive skip propagation in release pipeline ([#266](#266)) ([f809a7a](f809a7a)), closes [#264](#264) [#265](#265) [#265](#265)
* **ci:** replace heredoc with quoted strings in thread-gate job ([#246](#246)) ([9470b50](9470b50)), closes [#243](#243) [#245](#245)
* **ci:** unblock release pipeline on push to main ([#264](#264)) ([59b8cbe](59b8cbe)), closes [#263](#263)
* **deps:** update hono from 4.11.5 to 4.11.7 ([#248](#248)) ([71cc831](71cc831)), closes [#247](#247)
* **docs:** resolve SEO issues in VitePress documentation ([#249](#249)) ([#250](#250)) ([3e05717](3e05717))
* **docs:** use canonical URL for TOOLS reference in README ([#252](#252)) ([5ac56cc](5ac56cc)), closes [#251](#251)
* **pipelines:** serialize array query params as key[] for GitLab Rails API ([#262](#262)) ([955a3c1](955a3c1)), closes [#261](#261)
@sw-release-bot
Copy link
Copy Markdown

sw-release-bot bot commented Feb 2, 2026

🎉 This PR is included in version 6.51.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants