Skip to content

Add OneTrust cookie consent integration#1117

Open
nolannbiron wants to merge 8 commits intomainfrom
nolann/onetrust-cookie-banner
Open

Add OneTrust cookie consent integration#1117
nolannbiron wants to merge 8 commits intomainfrom
nolann/onetrust-cookie-banner

Conversation

@nolannbiron
Copy link
Member

@nolannbiron nolannbiron commented Feb 11, 2026

Add a new OneTrust integration that injects the OneTrust cookie consent banner

Demo:

GBO:

CleanShot.2026-02-11.at.20.28.52.mp4

GBX:

CleanShot 2026-02-11 at 21 06 09@2x CleanShot 2026-02-11 at 21 07 07@2x

Next step:

  • Add footer link to manage preferences

@changeset-bot
Copy link

changeset-bot bot commented Feb 11, 2026

🦋 Changeset detected

Latest commit: 0c782d9

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@gitbook/integration-onetrust Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

Copy link
Contributor

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

Adds a new OneTrust integration to inject the OneTrust cookie consent banner into published GitBook sites, parameterized by a configurable Domain Script ID.

Changes:

  • Introduces the @gitbook/integration-onetrust package with manifest/configuration and build setup.
  • Implements a fetch_published_script handler that serves an injected client script with the configured Domain Script ID.
  • Adds a changeset to publish the new integration as a minor bump.

Reviewed changes

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

Show a summary per file
File Description
integrations/onetrust/tsconfig.json Adds TypeScript configuration for the new integration package.
integrations/onetrust/src/script.raw.js Client-side injected script to load OneTrust SDK and hook consent events into GitBook.
integrations/onetrust/src/index.ts Runtime handler to serve the published script with the configured Domain Script ID.
integrations/onetrust/package.json Defines the new integration package metadata, deps, and scripts.
integrations/onetrust/global.d.ts Adds TypeScript declarations for .raw.js imports and (attempted) Window augmentation.
integrations/onetrust/gitbook-manifest.yaml Declares integration metadata, CSP, scopes, and configuration schema.
integrations/onetrust/assets/.gitkeep Keeps the assets directory present in git.
.changeset/easy-rice-bow.md Changeset to release the new integration.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@pkg-pr-new
Copy link

pkg-pr-new bot commented Feb 11, 2026

Open in StackBlitz

bun add https://pkg.pr.new/GitbookIO/integrations/@gitbook/api@1117

commit: 0c782d9

Copy link
Member

@SamyPesse SamyPesse left a comment

Choose a reason for hiding this comment

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

Looks good!

nolannbiron and others added 8 commits February 13, 2026 10:54
Add a new integrations/onetrust integration that injects the OneTrust cookie consent banner. Includes a gitbook-manifest.yaml (configuration for domain_script_id, CSP entry, and runtime scopes), a runtime handler (src/index.ts) that serves a templated script with the provided Domain Script ID via fetch_published_script, the raw loader script (src/script.raw.js) that registers with GitBook's cookie banner API and loads otSDKStub.js, TypeScript globals (global.d.ts), package.json, tsconfig.json, and an assets placeholder. The served script sets appropriate Content-Type and Cache-Control headers.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@nolannbiron nolannbiron force-pushed the nolann/onetrust-cookie-banner branch from 86273d5 to 0c782d9 Compare February 13, 2026 09:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants