Skip to content

Popups: subscribe visitors to web push on the step button - #90

Merged
rockwellll merged 17 commits into
mainfrom
feat/popup-push-subscription
Oct 24, 2026
Merged

rockwellll merged 17 commits into
mainfrom
feat/popup-push-subscription

Conversation

@anyelopetit

@anyelopetit anyelopetit commented Oct 22, 2026 •

Copy link
Copy Markdown
Collaborator

Requires backend PR hellotext/hellotext#6557.

What it does

When a visitor leaves Push checked and presses the current step button, the SDK requests browser permission and then always continues the popup.

  • Allowed, denied, dismissed, unsupported, and stalled subscriptions all continue the form; the secondary Push operation is capped at 15 seconds.
  • Repeated Next, Enter, or submit actions while Push is pending cannot advance or submit twice.
  • Push is independent of phone fields. The SDK hides, unchecks and disables the field when the backend marks Push unavailable for the business (data-popup-push-available) or the browser cannot use Push, including iPhone and iPad tabs without a Home Screen installation.
  • metadata.push_subscription and metadata.push_permission are sent when available.
  • The popup closes on Escape only for a real Escape key, so picking a browser autofill suggestion no longer closes it.
  • dist/ and lib/ are rebuilt from src/.

Release

Merge after the backend PR. Version bump and npm publish are not included.

Validation

  • While Push permission is pending, the step button is disabled and shows the server-provided loading label (data-push-loading-label, falling back to "Enable notifications") with dots that appear and disappear one at a time. Its original content and aria-busy are restored after allowed, denied, dismissed or timed-out answers.
  • Jest: 815 tests in 41 suites passing.
  • npm run build completed successfully.
  • Real device Push delivery remains a staging/manual check.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-23T13:19:54.119320Z ed88267 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c456b6b6a3

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/controllers/popup_controller.js
Comment thread src/controllers/popup_controller.js Outdated
Comment thread src/controllers/popup_controller.js
@hellotext hellotext deleted a comment from chatgpt-codex-connector Bot Oct 22, 2026
@anyelopetit anyelopetit self-assigned this Oct 22, 2026

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0b38a8a202

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/controllers/popup_controller.js
Comment thread src/controllers/popup_controller.js

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: afd0791b67

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/controllers/popup_controller.js
Comment thread lib/controllers/popup_controller.cjs Outdated
Comment thread lib/controllers/popup_controller.js Outdated
Comment thread src/controllers/popup_controller.js Outdated
rockwellll and others added 2 commits October 24, 2026 13:01
Restore the saved button markup through a DOMPurify helper instead of
innerHTML, and upgrade dompurify to 3.4.17.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@rockwellll
rockwellll merged commit 5f568f8 into main Oct 24, 2026
3 checks passed
@rockwellll
rockwellll deleted the feat/popup-push-subscription branch October 24, 2026 16:05
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.

2 participants