@hubspot/app-connect-sdk 1.0.0-alpha.20 → 1.0.0-alpha.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/.turbo/turbo-format$colon$check.log +1 -1
  2. package/.turbo/turbo-test.log +59 -56
  3. package/.turbo/turbo-tsdown.log +18 -16
  4. package/build/tsconfig.browser.tsbuildinfo +1 -1
  5. package/build/tsconfig.server.tsbuildinfo +1 -1
  6. package/dist/browser/{HubSpotAppConnect-DFe9b90e.js → HubSpotAppConnect-721kYr9d.js} +14 -21
  7. package/dist/browser/{HubSpotAppConnect-DFe9b90e.js.map → HubSpotAppConnect-721kYr9d.js.map} +1 -1
  8. package/dist/browser/{create-BNQazCF-.js → create-DxEyGG-k.js} +82 -37
  9. package/dist/browser/create-DxEyGG-k.js.map +1 -0
  10. package/dist/browser/index.d.ts +1 -1
  11. package/dist/browser/index.js +1 -1
  12. package/dist/browser/react/lovable.d.ts +1 -1
  13. package/dist/browser/react/lovable.js +2 -2
  14. package/dist/browser/react.d.ts +1 -1
  15. package/dist/browser/react.js +1 -1
  16. package/dist/browser/{types-DkAmHcZt.d.ts → types-C3wed8dU.d.ts} +31 -1
  17. package/dist/server/hono/hubspot-connect-routes/auth-complete.js +4 -1
  18. package/dist/server/hono/hubspot-connect-routes/auth-complete.js.map +1 -1
  19. package/dist/server/hono/hubspot-connect-routes/whoami.js +51 -0
  20. package/dist/server/hono/hubspot-connect-routes/whoami.js.map +1 -0
  21. package/package.json +3 -3
  22. package/src/browser/app-connect-controller/connect-start.test.ts +1 -0
  23. package/src/browser/app-connect-controller/constants.ts +6 -4
  24. package/src/browser/app-connect-controller/create.ts +8 -2
  25. package/src/browser/app-connect-controller/disconnect.ts +1 -0
  26. package/src/browser/app-connect-controller/init.test.ts +30 -15
  27. package/src/browser/app-connect-controller/init.ts +2 -2
  28. package/src/browser/app-connect-controller/oauth-complete.test.ts +7 -3
  29. package/src/browser/app-connect-controller/oauth-popup.test.ts +1 -0
  30. package/src/browser/app-connect-controller/types.ts +3 -0
  31. package/src/browser/app-connect-controller/utils/session-utils.test.ts +73 -22
  32. package/src/browser/app-connect-controller/utils/session-utils.ts +74 -33
  33. package/src/browser/app-connect-controller/view-state.test.ts +1 -0
  34. package/src/browser/app-connect-controller/view-state.ts +1 -0
  35. package/src/browser/react/components/AppConnectHeader/AppConnectHeader.tsx +18 -29
  36. package/src/browser/types.ts +9 -0
  37. package/src/server/hono/hubspot-connect-routes/auth-complete.test.ts +129 -20
  38. package/src/server/hono/hubspot-connect-routes/auth-complete.ts +8 -1
  39. package/src/server/hono/hubspot-connect-routes/whoami.ts +74 -0
  40. package/src/shared/wire-types.ts +30 -0
  41. package/dist/browser/create-BNQazCF-.js.map +0 -1
@@ -1,4 +1,4 @@
1
1
 
2
2
  $ prettier --check . --ignore-path ../../.prettierignore
3
3
  Checking formatting...
4
- .turbo/turbo-format$colon$check.log.turbo/turbo-lint.log.turbo/turbo-test.log.turbo/turbo-tsc.log.turbo/turbo-tsdown.logeslint.config.jspackage.jsonREADME.mdsrc/browser/app-connect-controller/connect-start.test.tssrc/browser/app-connect-controller/connect-start.tssrc/browser/app-connect-controller/constants.tssrc/browser/app-connect-controller/create.tssrc/browser/app-connect-controller/default-session-storage.tssrc/browser/app-connect-controller/disconnect.tssrc/browser/app-connect-controller/init.test.tssrc/browser/app-connect-controller/init.tssrc/browser/app-connect-controller/oauth-complete.test.tssrc/browser/app-connect-controller/oauth-complete.tssrc/browser/app-connect-controller/oauth-popup.test.tssrc/browser/app-connect-controller/oauth-popup.tssrc/browser/app-connect-controller/README.mdsrc/browser/app-connect-controller/refresh.tssrc/browser/app-connect-controller/types.tssrc/browser/app-connect-controller/utils/crypto-utils.tssrc/browser/app-connect-controller/utils/encode-utils.tssrc/browser/app-connect-controller/utils/iframe-utils.tssrc/browser/app-connect-controller/utils/memoize-utils.test.tssrc/browser/app-connect-controller/utils/memoize-utils.tssrc/browser/app-connect-controller/utils/resolve-oauth-connect-mode.test.tssrc/browser/app-connect-controller/utils/resolve-oauth-connect-mode.tssrc/browser/app-connect-controller/utils/session-utils.test.tssrc/browser/app-connect-controller/utils/session-utils.tssrc/browser/app-connect-controller/utils/store-utils.test.tssrc/browser/app-connect-controller/utils/store-utils.tssrc/browser/app-connect-controller/utils/timeout-utils.tssrc/browser/app-connect-controller/view-state.test.tssrc/browser/app-connect-controller/view-state.tssrc/browser/index.tssrc/browser/react/components/AppConnectHeader/AppConnectHeader.css.tssrc/browser/react/components/AppConnectHeader/AppConnectHeader.tsxsrc/browser/react/components/Button/Button.css.tssrc/browser/react/components/Button/Button.tsxsrc/browser/react/components/ConnectButton/ConnectButton.css.tssrc/browser/react/components/ConnectButton/ConnectButton.tsxsrc/browser/react/components/DisconnectedBody/DisconnectedBody.css.tssrc/browser/react/components/DisconnectedBody/DisconnectedBody.tsxsrc/browser/react/components/HubSpotAppConnect/HubSpotAppConnect.css.tssrc/browser/react/components/HubSpotAppConnect/HubSpotAppConnect.tsxsrc/browser/react/components/icons/ChevronDownIcon.tsxsrc/browser/react/components/icons/ExternalLinkIcon.tsxsrc/browser/react/components/icons/HubSpotDataSourceIcon.tsxsrc/browser/react/components/icons/LogoutIcon.tsxsrc/browser/react/components/icons/ShareIcon.tsxsrc/browser/react/components/LoadingIndicator/LoadingIndicator.css.tssrc/browser/react/components/LoadingIndicator/LoadingIndicator.tsxsrc/browser/react/components/ShareButton/ShareButton.css.tssrc/browser/react/components/ShareButton/ShareButton.tsxsrc/browser/react/context.tssrc/browser/react/hooks.tssrc/browser/react/index.tssrc/browser/react/lovable/index.tssrc/browser/react/lovable/LovableHubSpotAppConnect.tsxsrc/browser/theme-tokens.generated.css.tssrc/browser/theme.css.tssrc/browser/types.tssrc/server/api-client-core/__tests__/errors.test.tssrc/server/api-client-core/__tests__/operation-headers.test.tssrc/server/api-client-core/apis/account/account-info-types.generated.tssrc/server/api-client-core/apis/account/account-info.generated.tssrc/server/api-client-core/apis/account/audit-logs-types.generated.tssrc/server/api-client-core/apis/account/audit-logs.generated.tssrc/server/api-client-core/apis/auth/oauth-types.generated.tssrc/server/api-client-core/apis/auth/oauth.generated.tssrc/server/api-client-core/apis/automation/actions-types.generated.tssrc/server/api-client-core/apis/automation/actions.generated.tssrc/server/api-client-core/apis/automation/sequences-types.generated.tssrc/server/api-client-core/apis/automation/sequences.generated.tssrc/server/api-client-core/apis/business-units-types.generated.tssrc/server/api-client-core/apis/business-units.generated.tssrc/server/api-client-core/apis/cms/authors-types.generated.tssrc/server/api-client-core/apis/cms/authors.generated.tssrc/server/api-client-core/apis/cms/blog-settings-types.generated.tssrc/server/api-client-core/apis/cms/blog-settings.generated.tssrc/server/api-client-core/apis/cms/cms-content-audit-types.generated.tssrc/server/api-client-core/apis/cms/cms-content-audit.generated.tssrc/server/api-client-core/apis/cms/domains-types.generated.tssrc/server/api-client-core/apis/cms/domains.generated.tssrc/server/api-client-core/apis/cms/hubdb-types.generated.tssrc/server/api-client-core/apis/cms/hubdb.generated.tssrc/server/api-client-core/apis/cms/media-bridge-types.generated.tssrc/server/api-client-core/apis/cms/media-bridge.generated.tssrc/server/api-client-core/apis/cms/pages-types.generated.tssrc/server/api-client-core/apis/cms/pages.generated.tssrc/server/api-client-core/apis/cms/posts-types.generated.tssrc/server/api-client-core/apis/cms/posts.generated.tssrc/server/api-client-core/apis/cms/site-search-types.generated.tssrc/server/api-client-core/apis/cms/site-search.generated.tssrc/server/api-client-core/apis/cms/source-code-types.generated.tssrc/server/api-client-core/apis/cms/source-code.generated.tssrc/server/api-client-core/apis/cms/tags-types.generated.tssrc/server/api-client-core/apis/cms/tags.generated.tssrc/server/api-client-core/apis/cms/url-mappings-types.generated.tssrc/server/api-client-core/apis/cms/url-mappings.generated.tssrc/server/api-client-core/apis/cms/url-redirects-types.generated.tssrc/server/api-client-core/apis/cms/url-redirects.generated.tssrc/server/api-client-core/apis/communication-preferences/subscriptions-types.generated.tssrc/server/api-client-core/apis/communication-preferences/subscriptions.generated.tssrc/server/api-client-core/apis/conversations-types.generated.tssrc/server/api-client-core/apis/conversations.generated.tssrc/server/api-client-core/apis/conversations/custom-channels-types.generated.tssrc/server/api-client-core/apis/conversations/custom-channels.generated.tssrc/server/api-client-core/apis/conversations/visitor-identification-types.generated.tssrc/server/api-client-core/apis/conversations/visitor-identification.generated.tssrc/server/api-client-core/apis/crm/app-uninstalls-types.generated.tssrc/server/api-client-core/apis/crm/app-uninstalls.generated.tssrc/server/api-client-core/apis/crm/appointments-types.generated.tssrc/server/api-client-core/apis/crm/appointments.generated.tssrc/server/api-client-core/apis/crm/associations-schema-types.generated.tssrc/server/api-client-core/apis/crm/associations-schema.generated.tssrc/server/api-client-core/apis/crm/associations-types.generated.tssrc/server/api-client-core/apis/crm/associations.generated.tssrc/server/api-client-core/apis/crm/calling-extensions-types.generated.tssrc/server/api-client-core/apis/crm/calling-extensions.generated.tssrc/server/api-client-core/apis/crm/calls-types.generated.tssrc/server/api-client-core/apis/crm/calls.generated.tssrc/server/api-client-core/apis/crm/carts-types.generated.tssrc/server/api-client-core/apis/crm/carts.generated.tssrc/server/api-client-core/apis/crm/commerce-payments-types.generated.tssrc/server/api-client-core/apis/crm/commerce-payments.generated.tssrc/server/api-client-core/apis/crm/commerce-subscriptions-types.generated.tssrc/server/api-client-core/apis/crm/commerce-subscriptions.generated.tssrc/server/api-client-core/apis/crm/communications-types.generated.tssrc/server/api-client-core/apis/crm/communications.generated.tssrc/server/api-client-core/apis/crm/companies-types.generated.tssrc/server/api-client-core/apis/crm/companies.generated.tssrc/server/api-client-core/apis/crm/contacts-types.generated.tssrc/server/api-client-core/apis/crm/contacts.generated.tssrc/server/api-client-core/apis/crm/contracts-types.generated.tssrc/server/api-client-core/apis/crm/contracts.generated.tssrc/server/api-client-core/apis/crm/courses-types.generated.tssrc/server/api-client-core/apis/crm/courses.generated.tssrc/server/api-client-core/apis/crm/crm-owners-types.generated.tssrc/server/api-client-core/apis/crm/crm-owners.generated.tssrc/server/api-client-core/apis/crm/custom-objects-types.generated.tssrc/server/api-client-core/apis/crm/custom-objects.generated.tssrc/server/api-client-core/apis/crm/deal-splits-types.generated.tssrc/server/api-client-core/apis/crm/deal-splits.generated.tssrc/server/api-client-core/apis/crm/deals-types.generated.tssrc/server/api-client-core/apis/crm/deals.generated.tssrc/server/api-client-core/apis/crm/discounts-types.generated.tssrc/server/api-client-core/apis/crm/discounts.generated.tssrc/server/api-client-core/apis/crm/emails-types.generated.tssrc/server/api-client-core/apis/crm/emails.generated.tssrc/server/api-client-core/apis/crm/exports-types.generated.tssrc/server/api-client-core/apis/crm/exports.generated.tssrc/server/api-client-core/apis/crm/feedback-submissions-types.generated.tssrc/server/api-client-core/apis/crm/feedback-submissions.generated.tssrc/server/api-client-core/apis/crm/fees-types.generated.tssrc/server/api-client-core/apis/crm/fees.generated.tssrc/server/api-client-core/apis/crm/goal-targets-types.generated.tssrc/server/api-client-core/apis/crm/goal-targets.generated.tssrc/server/api-client-core/apis/crm/imports-types.generated.tssrc/server/api-client-core/apis/crm/imports.generated.tssrc/server/api-client-core/apis/crm/invoices-types.generated.tssrc/server/api-client-core/apis/crm/invoices.generated.tssrc/server/api-client-core/apis/crm/leads-types.generated.tssrc/server/api-client-core/apis/crm/leads.generated.tssrc/server/api-client-core/apis/crm/limits-tracking-types.generated.tssrc/server/api-client-core/apis/crm/limits-tracking.generated.tssrc/server/api-client-core/apis/crm/line-items-types.generated.tssrc/server/api-client-core/apis/crm/line-items.generated.tssrc/server/api-client-core/apis/crm/listings-types.generated.tssrc/server/api-client-core/apis/crm/listings.generated.tssrc/server/api-client-core/apis/crm/lists-types.generated.tssrc/server/api-client-core/apis/crm/lists.generated.tssrc/server/api-client-core/apis/crm/meetings-types.generated.tssrc/server/api-client-core/apis/crm/meetings.generated.tssrc/server/api-client-core/apis/crm/notes-types.generated.tssrc/server/api-client-core/apis/crm/notes.generated.tssrc/server/api-client-core/apis/crm/object-library-types.generated.tssrc/server/api-client-core/apis/crm/object-library.generated.tssrc/server/api-client-core/apis/crm/objects-types.generated.tssrc/server/api-client-core/apis/crm/objects.generated.tssrc/server/api-client-core/apis/crm/orders-types.generated.tssrc/server/api-client-core/apis/crm/orders.generated.tssrc/server/api-client-core/apis/crm/partner-clients-types.generated.tssrc/server/api-client-core/apis/crm/partner-clients.generated.tssrc/server/api-client-core/apis/crm/partner-services-types.generated.tssrc/server/api-client-core/apis/crm/partner-services.generated.tssrc/server/api-client-core/apis/crm/pipelines-types.generated.tssrc/server/api-client-core/apis/crm/pipelines.generated.tssrc/server/api-client-core/apis/crm/postal-mail-types.generated.tssrc/server/api-client-core/apis/crm/postal-mail.generated.tssrc/server/api-client-core/apis/crm/products-types.generated.tssrc/server/api-client-core/apis/crm/products.generated.tssrc/server/api-client-core/apis/crm/projects-types.generated.tssrc/server/api-client-core/apis/crm/projects.generated.tssrc/server/api-client-core/apis/crm/properties-types.generated.tssrc/server/api-client-core/apis/crm/properties.generated.tssrc/server/api-client-core/apis/crm/property-validations-types.generated.tssrc/server/api-client-core/apis/crm/property-validations.generated.tssrc/server/api-client-core/apis/crm/public-app-crm-cards-types.generated.tssrc/server/api-client-core/apis/crm/public-app-crm-cards.generated.tssrc/server/api-client-core/apis/crm/public-app-feature-flags-types.generated.tssrc/server/api-client-core/apis/crm/public-app-feature-flags.generated.tssrc/server/api-client-core/apis/crm/quotes-types.generated.tssrc/server/api-client-core/apis/crm/quotes.generated.tssrc/server/api-client-core/apis/crm/schemas-types.generated.tssrc/server/api-client-core/apis/crm/schemas.generated.tssrc/server/api-client-core/apis/crm/services-types.generated.tssrc/server/api-client-core/apis/crm/services.generated.tssrc/server/api-client-core/apis/crm/tasks-types.generated.tssrc/server/api-client-core/apis/crm/tasks.generated.tssrc/server/api-client-core/apis/crm/taxes-types.generated.tssrc/server/api-client-core/apis/crm/taxes.generated.tssrc/server/api-client-core/apis/crm/tickets-types.generated.tssrc/server/api-client-core/apis/crm/tickets.generated.tssrc/server/api-client-core/apis/crm/timeline-types.generated.tssrc/server/api-client-core/apis/crm/timeline.generated.tssrc/server/api-client-core/apis/crm/transcriptions-types.generated.tssrc/server/api-client-core/apis/crm/transcriptions.generated.tssrc/server/api-client-core/apis/crm/users-types.generated.tssrc/server/api-client-core/apis/crm/users.generated.tssrc/server/api-client-core/apis/crm/video-conferencing-extension-types.generated.tssrc/server/api-client-core/apis/crm/video-conferencing-extension.generated.tssrc/server/api-client-core/apis/events-types.generated.tssrc/server/api-client-core/apis/events.generated.tssrc/server/api-client-core/apis/events/manage-event-definitions-types.generated.tssrc/server/api-client-core/apis/events/manage-event-definitions.generated.tssrc/server/api-client-core/apis/events/send-event-completions-types.generated.tssrc/server/api-client-core/apis/events/send-event-completions.generated.tssrc/server/api-client-core/apis/files-types.generated.tssrc/server/api-client-core/apis/files.generated.tssrc/server/api-client-core/apis/index.generated.tssrc/server/api-client-core/apis/marketing/campaigns-public-api-types.generated.tssrc/server/api-client-core/apis/marketing/campaigns-public-api.generated.tssrc/server/api-client-core/apis/marketing/marketing-emails-types.generated.tssrc/server/api-client-core/apis/marketing/marketing-emails.generated.tssrc/server/api-client-core/apis/marketing/marketing-events-types.generated.tssrc/server/api-client-core/apis/marketing/marketing-events.generated.tssrc/server/api-client-core/apis/marketing/single-send-types.generated.tssrc/server/api-client-core/apis/marketing/single-send.generated.tssrc/server/api-client-core/apis/marketing/transactional-single-send-types.generated.tssrc/server/api-client-core/apis/marketing/transactional-single-send.generated.tssrc/server/api-client-core/apis/meta/origins-types.generated.tssrc/server/api-client-core/apis/meta/origins.generated.tssrc/server/api-client-core/apis/scheduler/meetings-types.generated.tssrc/server/api-client-core/apis/scheduler/meetings.generated.tssrc/server/api-client-core/apis/settings/multicurrency-types.generated.tssrc/server/api-client-core/apis/settings/multicurrency.generated.tssrc/server/api-client-core/apis/settings/tax-rates-types.generated.tssrc/server/api-client-core/apis/settings/tax-rates.generated.tssrc/server/api-client-core/apis/settings/user-provisioning-types.generated.tssrc/server/api-client-core/apis/settings/user-provisioning.generated.tssrc/server/api-client-core/apis/webhooks-journal-types.generated.tssrc/server/api-client-core/apis/webhooks-journal.generated.tssrc/server/api-client-core/apis/webhooks-types.generated.tssrc/server/api-client-core/apis/webhooks.generated.tssrc/server/api-client-core/binary-data.tssrc/server/api-client-core/client.tssrc/server/api-client-core/codegen-helpers/file-op-wrappers.tssrc/server/api-client-core/errors.tssrc/server/api-client-core/index.tssrc/server/api-client-core/op.tssrc/server/api-client-core/pagination.tssrc/server/api-client-core/plugins/fetch-transport.tssrc/server/api-client-core/plugins/index.tssrc/server/api-client-core/types.tssrc/server/api-client.tssrc/server/constants.tssrc/server/deno/index.tssrc/server/deno/start.tssrc/server/hono/hono-request-handler.tssrc/server/hono/hubspot-connect-routes/auth-complete.test.tssrc/server/hono/hubspot-connect-routes/auth-complete.tssrc/server/hono/hubspot-connect-routes/auth-init-session.test.tssrc/server/hono/hubspot-connect-routes/auth-init-session.tssrc/server/hono/hubspot-connect-routes/auth-logout.test.tssrc/server/hono/hubspot-connect-routes/auth-logout.tssrc/server/hono/hubspot-connect-routes/auth-refresh.test.tssrc/server/hono/hubspot-connect-routes/auth-refresh.tssrc/server/hono/hubspot-connect-routes/cimd-client-metadata-types.tssrc/server/hono/hubspot-connect-routes/cimd-public-routes.test.tssrc/server/hono/hubspot-connect-routes/cimd-public-routes.tssrc/server/hono/hubspot-connect-routes/constants.tssrc/server/hono/hubspot-connect-routes/fetch-hubspot-client-metadata.test.tssrc/server/hono/hubspot-connect-routes/fetch-hubspot-client-metadata.tssrc/server/hono/hubspot-connect-routes/hubspot-connect-routes.tssrc/server/hono/hubspot-connect-routes/load-hubspot-connect-routes-env.test.tssrc/server/hono/hubspot-connect-routes/load-hubspot-connect-routes-env.tssrc/server/hono/hubspot-connect-routes/oauth-client.tssrc/server/hono/hubspot-connect-routes/types.tssrc/server/hono/hubspot-connect-routes/utils.test.tssrc/server/hono/hubspot-connect-routes/utils.tssrc/server/hono/index.tssrc/server/hono/types.tssrc/server/hono/utils/cookie-utils.tssrc/server/hono/utils/cors-middleware.test.tssrc/server/hono/utils/cors-middleware.tssrc/server/import-app-keys.tssrc/server/lovable/create-app-function-start.tssrc/server/lovable/hubspot-connect/index.tssrc/server/lovable/hubspot-connect/run-hubspot-connect-lovable-server.tssrc/server/lovable/index.tssrc/server/node/index.tssrc/server/node/start.tssrc/server/oauth.tssrc/server/sanitize-request.test.tssrc/server/sanitize-request.tssrc/server/secure-start-core.tssrc/server/types.tssrc/server/utils/base64-utils.tssrc/server/utils/cookie-utils.test.tssrc/server/utils/cookie-utils.tssrc/server/utils/crypto-utils.tssrc/server/utils/dpop-utils.test.tssrc/server/utils/dpop-utils.tssrc/server/utils/env-utils.test.tssrc/server/utils/env-utils.tssrc/server/utils/hubspot-dpop-auth-headers.test.tssrc/server/utils/hubspot-dpop-auth-headers.tssrc/server/utils/jwk-utils.test.tssrc/server/utils/jwk-utils.tssrc/server/utils/jwt-utils.test.tssrc/server/utils/jwt-utils.tssrc/server/utils/test-fixtures.tssrc/shared/constants.tssrc/shared/encoding/base64.test.tssrc/shared/encoding/base64.tssrc/shared/encoding/sha256.test.tssrc/shared/encoding/sha256.tssrc/shared/logger.tssrc/shared/wire-types.tstsconfig.browser.jsontsconfig.jsontsconfig.server.jsontsdown.config.tsvitest.config.tsAll matched files use Prettier code style!
4
+ .turbo/turbo-format$colon$check.log.turbo/turbo-lint.log.turbo/turbo-test.log.turbo/turbo-tsc.log.turbo/turbo-tsdown.logeslint.config.jspackage.jsonREADME.mdsrc/browser/app-connect-controller/connect-start.test.tssrc/browser/app-connect-controller/connect-start.tssrc/browser/app-connect-controller/constants.tssrc/browser/app-connect-controller/create.tssrc/browser/app-connect-controller/default-session-storage.tssrc/browser/app-connect-controller/disconnect.tssrc/browser/app-connect-controller/init.test.tssrc/browser/app-connect-controller/init.tssrc/browser/app-connect-controller/oauth-complete.test.tssrc/browser/app-connect-controller/oauth-complete.tssrc/browser/app-connect-controller/oauth-popup.test.tssrc/browser/app-connect-controller/oauth-popup.tssrc/browser/app-connect-controller/README.mdsrc/browser/app-connect-controller/refresh.tssrc/browser/app-connect-controller/types.tssrc/browser/app-connect-controller/utils/crypto-utils.tssrc/browser/app-connect-controller/utils/encode-utils.tssrc/browser/app-connect-controller/utils/iframe-utils.tssrc/browser/app-connect-controller/utils/memoize-utils.test.tssrc/browser/app-connect-controller/utils/memoize-utils.tssrc/browser/app-connect-controller/utils/resolve-oauth-connect-mode.test.tssrc/browser/app-connect-controller/utils/resolve-oauth-connect-mode.tssrc/browser/app-connect-controller/utils/session-utils.test.tssrc/browser/app-connect-controller/utils/session-utils.tssrc/browser/app-connect-controller/utils/store-utils.test.tssrc/browser/app-connect-controller/utils/store-utils.tssrc/browser/app-connect-controller/utils/timeout-utils.tssrc/browser/app-connect-controller/view-state.test.tssrc/browser/app-connect-controller/view-state.tssrc/browser/index.tssrc/browser/react/components/AppConnectHeader/AppConnectHeader.css.tssrc/browser/react/components/AppConnectHeader/AppConnectHeader.tsxsrc/browser/react/components/Button/Button.css.tssrc/browser/react/components/Button/Button.tsxsrc/browser/react/components/ConnectButton/ConnectButton.css.tssrc/browser/react/components/ConnectButton/ConnectButton.tsxsrc/browser/react/components/DisconnectedBody/DisconnectedBody.css.tssrc/browser/react/components/DisconnectedBody/DisconnectedBody.tsxsrc/browser/react/components/HubSpotAppConnect/HubSpotAppConnect.css.tssrc/browser/react/components/HubSpotAppConnect/HubSpotAppConnect.tsxsrc/browser/react/components/icons/ChevronDownIcon.tsxsrc/browser/react/components/icons/ExternalLinkIcon.tsxsrc/browser/react/components/icons/HubSpotDataSourceIcon.tsxsrc/browser/react/components/icons/LogoutIcon.tsxsrc/browser/react/components/icons/ShareIcon.tsxsrc/browser/react/components/LoadingIndicator/LoadingIndicator.css.tssrc/browser/react/components/LoadingIndicator/LoadingIndicator.tsxsrc/browser/react/components/ShareButton/ShareButton.css.tssrc/browser/react/components/ShareButton/ShareButton.tsxsrc/browser/react/context.tssrc/browser/react/hooks.tssrc/browser/react/index.tssrc/browser/react/lovable/index.tssrc/browser/react/lovable/LovableHubSpotAppConnect.tsxsrc/browser/theme-tokens.generated.css.tssrc/browser/theme.css.tssrc/browser/types.tssrc/server/api-client-core/__tests__/errors.test.tssrc/server/api-client-core/__tests__/operation-headers.test.tssrc/server/api-client-core/apis/account/account-info-types.generated.tssrc/server/api-client-core/apis/account/account-info.generated.tssrc/server/api-client-core/apis/account/audit-logs-types.generated.tssrc/server/api-client-core/apis/account/audit-logs.generated.tssrc/server/api-client-core/apis/auth/oauth-types.generated.tssrc/server/api-client-core/apis/auth/oauth.generated.tssrc/server/api-client-core/apis/automation/actions-types.generated.tssrc/server/api-client-core/apis/automation/actions.generated.tssrc/server/api-client-core/apis/automation/sequences-types.generated.tssrc/server/api-client-core/apis/automation/sequences.generated.tssrc/server/api-client-core/apis/business-units-types.generated.tssrc/server/api-client-core/apis/business-units.generated.tssrc/server/api-client-core/apis/cms/authors-types.generated.tssrc/server/api-client-core/apis/cms/authors.generated.tssrc/server/api-client-core/apis/cms/blog-settings-types.generated.tssrc/server/api-client-core/apis/cms/blog-settings.generated.tssrc/server/api-client-core/apis/cms/cms-content-audit-types.generated.tssrc/server/api-client-core/apis/cms/cms-content-audit.generated.tssrc/server/api-client-core/apis/cms/domains-types.generated.tssrc/server/api-client-core/apis/cms/domains.generated.tssrc/server/api-client-core/apis/cms/hubdb-types.generated.tssrc/server/api-client-core/apis/cms/hubdb.generated.tssrc/server/api-client-core/apis/cms/media-bridge-types.generated.tssrc/server/api-client-core/apis/cms/media-bridge.generated.tssrc/server/api-client-core/apis/cms/pages-types.generated.tssrc/server/api-client-core/apis/cms/pages.generated.tssrc/server/api-client-core/apis/cms/posts-types.generated.tssrc/server/api-client-core/apis/cms/posts.generated.tssrc/server/api-client-core/apis/cms/site-search-types.generated.tssrc/server/api-client-core/apis/cms/site-search.generated.tssrc/server/api-client-core/apis/cms/source-code-types.generated.tssrc/server/api-client-core/apis/cms/source-code.generated.tssrc/server/api-client-core/apis/cms/tags-types.generated.tssrc/server/api-client-core/apis/cms/tags.generated.tssrc/server/api-client-core/apis/cms/url-mappings-types.generated.tssrc/server/api-client-core/apis/cms/url-mappings.generated.tssrc/server/api-client-core/apis/cms/url-redirects-types.generated.tssrc/server/api-client-core/apis/cms/url-redirects.generated.tssrc/server/api-client-core/apis/communication-preferences/subscriptions-types.generated.tssrc/server/api-client-core/apis/communication-preferences/subscriptions.generated.tssrc/server/api-client-core/apis/conversations-types.generated.tssrc/server/api-client-core/apis/conversations.generated.tssrc/server/api-client-core/apis/conversations/custom-channels-types.generated.tssrc/server/api-client-core/apis/conversations/custom-channels.generated.tssrc/server/api-client-core/apis/conversations/visitor-identification-types.generated.tssrc/server/api-client-core/apis/conversations/visitor-identification.generated.tssrc/server/api-client-core/apis/crm/app-uninstalls-types.generated.tssrc/server/api-client-core/apis/crm/app-uninstalls.generated.tssrc/server/api-client-core/apis/crm/appointments-types.generated.tssrc/server/api-client-core/apis/crm/appointments.generated.tssrc/server/api-client-core/apis/crm/associations-schema-types.generated.tssrc/server/api-client-core/apis/crm/associations-schema.generated.tssrc/server/api-client-core/apis/crm/associations-types.generated.tssrc/server/api-client-core/apis/crm/associations.generated.tssrc/server/api-client-core/apis/crm/calling-extensions-types.generated.tssrc/server/api-client-core/apis/crm/calling-extensions.generated.tssrc/server/api-client-core/apis/crm/calls-types.generated.tssrc/server/api-client-core/apis/crm/calls.generated.tssrc/server/api-client-core/apis/crm/carts-types.generated.tssrc/server/api-client-core/apis/crm/carts.generated.tssrc/server/api-client-core/apis/crm/commerce-payments-types.generated.tssrc/server/api-client-core/apis/crm/commerce-payments.generated.tssrc/server/api-client-core/apis/crm/commerce-subscriptions-types.generated.tssrc/server/api-client-core/apis/crm/commerce-subscriptions.generated.tssrc/server/api-client-core/apis/crm/communications-types.generated.tssrc/server/api-client-core/apis/crm/communications.generated.tssrc/server/api-client-core/apis/crm/companies-types.generated.tssrc/server/api-client-core/apis/crm/companies.generated.tssrc/server/api-client-core/apis/crm/contacts-types.generated.tssrc/server/api-client-core/apis/crm/contacts.generated.tssrc/server/api-client-core/apis/crm/contracts-types.generated.tssrc/server/api-client-core/apis/crm/contracts.generated.tssrc/server/api-client-core/apis/crm/courses-types.generated.tssrc/server/api-client-core/apis/crm/courses.generated.tssrc/server/api-client-core/apis/crm/crm-owners-types.generated.tssrc/server/api-client-core/apis/crm/crm-owners.generated.tssrc/server/api-client-core/apis/crm/custom-objects-types.generated.tssrc/server/api-client-core/apis/crm/custom-objects.generated.tssrc/server/api-client-core/apis/crm/deal-splits-types.generated.tssrc/server/api-client-core/apis/crm/deal-splits.generated.tssrc/server/api-client-core/apis/crm/deals-types.generated.tssrc/server/api-client-core/apis/crm/deals.generated.tssrc/server/api-client-core/apis/crm/discounts-types.generated.tssrc/server/api-client-core/apis/crm/discounts.generated.tssrc/server/api-client-core/apis/crm/emails-types.generated.tssrc/server/api-client-core/apis/crm/emails.generated.tssrc/server/api-client-core/apis/crm/exports-types.generated.tssrc/server/api-client-core/apis/crm/exports.generated.tssrc/server/api-client-core/apis/crm/feedback-submissions-types.generated.tssrc/server/api-client-core/apis/crm/feedback-submissions.generated.tssrc/server/api-client-core/apis/crm/fees-types.generated.tssrc/server/api-client-core/apis/crm/fees.generated.tssrc/server/api-client-core/apis/crm/goal-targets-types.generated.tssrc/server/api-client-core/apis/crm/goal-targets.generated.tssrc/server/api-client-core/apis/crm/imports-types.generated.tssrc/server/api-client-core/apis/crm/imports.generated.tssrc/server/api-client-core/apis/crm/invoices-types.generated.tssrc/server/api-client-core/apis/crm/invoices.generated.tssrc/server/api-client-core/apis/crm/leads-types.generated.tssrc/server/api-client-core/apis/crm/leads.generated.tssrc/server/api-client-core/apis/crm/limits-tracking-types.generated.tssrc/server/api-client-core/apis/crm/limits-tracking.generated.tssrc/server/api-client-core/apis/crm/line-items-types.generated.tssrc/server/api-client-core/apis/crm/line-items.generated.tssrc/server/api-client-core/apis/crm/listings-types.generated.tssrc/server/api-client-core/apis/crm/listings.generated.tssrc/server/api-client-core/apis/crm/lists-types.generated.tssrc/server/api-client-core/apis/crm/lists.generated.tssrc/server/api-client-core/apis/crm/meetings-types.generated.tssrc/server/api-client-core/apis/crm/meetings.generated.tssrc/server/api-client-core/apis/crm/notes-types.generated.tssrc/server/api-client-core/apis/crm/notes.generated.tssrc/server/api-client-core/apis/crm/object-library-types.generated.tssrc/server/api-client-core/apis/crm/object-library.generated.tssrc/server/api-client-core/apis/crm/objects-types.generated.tssrc/server/api-client-core/apis/crm/objects.generated.tssrc/server/api-client-core/apis/crm/orders-types.generated.tssrc/server/api-client-core/apis/crm/orders.generated.tssrc/server/api-client-core/apis/crm/partner-clients-types.generated.tssrc/server/api-client-core/apis/crm/partner-clients.generated.tssrc/server/api-client-core/apis/crm/partner-services-types.generated.tssrc/server/api-client-core/apis/crm/partner-services.generated.tssrc/server/api-client-core/apis/crm/pipelines-types.generated.tssrc/server/api-client-core/apis/crm/pipelines.generated.tssrc/server/api-client-core/apis/crm/postal-mail-types.generated.tssrc/server/api-client-core/apis/crm/postal-mail.generated.tssrc/server/api-client-core/apis/crm/products-types.generated.tssrc/server/api-client-core/apis/crm/products.generated.tssrc/server/api-client-core/apis/crm/projects-types.generated.tssrc/server/api-client-core/apis/crm/projects.generated.tssrc/server/api-client-core/apis/crm/properties-types.generated.tssrc/server/api-client-core/apis/crm/properties.generated.tssrc/server/api-client-core/apis/crm/property-validations-types.generated.tssrc/server/api-client-core/apis/crm/property-validations.generated.tssrc/server/api-client-core/apis/crm/public-app-crm-cards-types.generated.tssrc/server/api-client-core/apis/crm/public-app-crm-cards.generated.tssrc/server/api-client-core/apis/crm/public-app-feature-flags-types.generated.tssrc/server/api-client-core/apis/crm/public-app-feature-flags.generated.tssrc/server/api-client-core/apis/crm/quotes-types.generated.tssrc/server/api-client-core/apis/crm/quotes.generated.tssrc/server/api-client-core/apis/crm/schemas-types.generated.tssrc/server/api-client-core/apis/crm/schemas.generated.tssrc/server/api-client-core/apis/crm/services-types.generated.tssrc/server/api-client-core/apis/crm/services.generated.tssrc/server/api-client-core/apis/crm/tasks-types.generated.tssrc/server/api-client-core/apis/crm/tasks.generated.tssrc/server/api-client-core/apis/crm/taxes-types.generated.tssrc/server/api-client-core/apis/crm/taxes.generated.tssrc/server/api-client-core/apis/crm/tickets-types.generated.tssrc/server/api-client-core/apis/crm/tickets.generated.tssrc/server/api-client-core/apis/crm/timeline-types.generated.tssrc/server/api-client-core/apis/crm/timeline.generated.tssrc/server/api-client-core/apis/crm/transcriptions-types.generated.tssrc/server/api-client-core/apis/crm/transcriptions.generated.tssrc/server/api-client-core/apis/crm/users-types.generated.tssrc/server/api-client-core/apis/crm/users.generated.tssrc/server/api-client-core/apis/crm/video-conferencing-extension-types.generated.tssrc/server/api-client-core/apis/crm/video-conferencing-extension.generated.tssrc/server/api-client-core/apis/events-types.generated.tssrc/server/api-client-core/apis/events.generated.tssrc/server/api-client-core/apis/events/manage-event-definitions-types.generated.tssrc/server/api-client-core/apis/events/manage-event-definitions.generated.tssrc/server/api-client-core/apis/events/send-event-completions-types.generated.tssrc/server/api-client-core/apis/events/send-event-completions.generated.tssrc/server/api-client-core/apis/files-types.generated.tssrc/server/api-client-core/apis/files.generated.tssrc/server/api-client-core/apis/index.generated.tssrc/server/api-client-core/apis/marketing/campaigns-public-api-types.generated.tssrc/server/api-client-core/apis/marketing/campaigns-public-api.generated.tssrc/server/api-client-core/apis/marketing/marketing-emails-types.generated.tssrc/server/api-client-core/apis/marketing/marketing-emails.generated.tssrc/server/api-client-core/apis/marketing/marketing-events-types.generated.tssrc/server/api-client-core/apis/marketing/marketing-events.generated.tssrc/server/api-client-core/apis/marketing/single-send-types.generated.tssrc/server/api-client-core/apis/marketing/single-send.generated.tssrc/server/api-client-core/apis/marketing/transactional-single-send-types.generated.tssrc/server/api-client-core/apis/marketing/transactional-single-send.generated.tssrc/server/api-client-core/apis/meta/origins-types.generated.tssrc/server/api-client-core/apis/meta/origins.generated.tssrc/server/api-client-core/apis/scheduler/meetings-types.generated.tssrc/server/api-client-core/apis/scheduler/meetings.generated.tssrc/server/api-client-core/apis/settings/multicurrency-types.generated.tssrc/server/api-client-core/apis/settings/multicurrency.generated.tssrc/server/api-client-core/apis/settings/tax-rates-types.generated.tssrc/server/api-client-core/apis/settings/tax-rates.generated.tssrc/server/api-client-core/apis/settings/user-provisioning-types.generated.tssrc/server/api-client-core/apis/settings/user-provisioning.generated.tssrc/server/api-client-core/apis/webhooks-journal-types.generated.tssrc/server/api-client-core/apis/webhooks-journal.generated.tssrc/server/api-client-core/apis/webhooks-types.generated.tssrc/server/api-client-core/apis/webhooks.generated.tssrc/server/api-client-core/binary-data.tssrc/server/api-client-core/client.tssrc/server/api-client-core/codegen-helpers/file-op-wrappers.tssrc/server/api-client-core/errors.tssrc/server/api-client-core/index.tssrc/server/api-client-core/op.tssrc/server/api-client-core/pagination.tssrc/server/api-client-core/plugins/fetch-transport.tssrc/server/api-client-core/plugins/index.tssrc/server/api-client-core/types.tssrc/server/api-client.tssrc/server/constants.tssrc/server/deno/index.tssrc/server/deno/start.tssrc/server/hono/hono-request-handler.tssrc/server/hono/hubspot-connect-routes/auth-complete.test.tssrc/server/hono/hubspot-connect-routes/auth-complete.tssrc/server/hono/hubspot-connect-routes/auth-init-session.test.tssrc/server/hono/hubspot-connect-routes/auth-init-session.tssrc/server/hono/hubspot-connect-routes/auth-logout.test.tssrc/server/hono/hubspot-connect-routes/auth-logout.tssrc/server/hono/hubspot-connect-routes/auth-refresh.test.tssrc/server/hono/hubspot-connect-routes/auth-refresh.tssrc/server/hono/hubspot-connect-routes/cimd-client-metadata-types.tssrc/server/hono/hubspot-connect-routes/cimd-public-routes.test.tssrc/server/hono/hubspot-connect-routes/cimd-public-routes.tssrc/server/hono/hubspot-connect-routes/constants.tssrc/server/hono/hubspot-connect-routes/fetch-hubspot-client-metadata.test.tssrc/server/hono/hubspot-connect-routes/fetch-hubspot-client-metadata.tssrc/server/hono/hubspot-connect-routes/hubspot-connect-routes.tssrc/server/hono/hubspot-connect-routes/load-hubspot-connect-routes-env.test.tssrc/server/hono/hubspot-connect-routes/load-hubspot-connect-routes-env.tssrc/server/hono/hubspot-connect-routes/oauth-client.tssrc/server/hono/hubspot-connect-routes/types.tssrc/server/hono/hubspot-connect-routes/utils.test.tssrc/server/hono/hubspot-connect-routes/utils.tssrc/server/hono/hubspot-connect-routes/whoami.tssrc/server/hono/index.tssrc/server/hono/types.tssrc/server/hono/utils/cookie-utils.tssrc/server/hono/utils/cors-middleware.test.tssrc/server/hono/utils/cors-middleware.tssrc/server/import-app-keys.tssrc/server/lovable/create-app-function-start.tssrc/server/lovable/hubspot-connect/index.tssrc/server/lovable/hubspot-connect/run-hubspot-connect-lovable-server.tssrc/server/lovable/index.tssrc/server/node/index.tssrc/server/node/start.tssrc/server/oauth.tssrc/server/sanitize-request.test.tssrc/server/sanitize-request.tssrc/server/secure-start-core.tssrc/server/types.tssrc/server/utils/base64-utils.tssrc/server/utils/cookie-utils.test.tssrc/server/utils/cookie-utils.tssrc/server/utils/crypto-utils.tssrc/server/utils/dpop-utils.test.tssrc/server/utils/dpop-utils.tssrc/server/utils/env-utils.test.tssrc/server/utils/env-utils.tssrc/server/utils/hubspot-dpop-auth-headers.test.tssrc/server/utils/hubspot-dpop-auth-headers.tssrc/server/utils/jwk-utils.test.tssrc/server/utils/jwk-utils.tssrc/server/utils/jwt-utils.test.tssrc/server/utils/jwt-utils.tssrc/server/utils/test-fixtures.tssrc/shared/constants.tssrc/shared/encoding/base64.test.tssrc/shared/encoding/base64.tssrc/shared/encoding/sha256.test.tssrc/shared/encoding/sha256.tssrc/shared/logger.tssrc/shared/wire-types.tstsconfig.browser.jsontsconfig.jsontsconfig.server.jsontsdown.config.tsvitest.config.tsAll matched files use Prettier code style!
@@ -4,47 +4,47 @@
4
4
   RUN  v4.1.6 /Users/psteeleidem/src/HubSpotEngineering/app-connect-sdk/packages/app-connect-sdk
5
5
 
6
6
  [?2026h
7
-  ❯ src/server/hono/hubspot-connect-routes/cimd-public-routes.test.ts [queued]
7
+  ❯ src/server/utils/dpop-utils.test.ts [queued]
8
8
 
9
9
   Test Files 0 passed (29)
10
10
   Tests 0 passed (0)
11
-  Start at 15:45:31
12
-  Duration 100ms
11
+  Start at 09:09:10
12
+  Duration 201ms
13
13
  [?2026l[?2026h
14
14
   ❯ src/browser/app-connect-controller/connect-start.test.ts [queued]
15
15
   ❯ src/browser/app-connect-controller/init.test.ts [queued]
16
16
   ❯ src/browser/app-connect-controller/oauth-complete.test.ts [queued]
17
17
   ❯ src/browser/app-connect-controller/oauth-popup.test.ts [queued]
18
-  ❯ src/server/api-client-core/__tests__/operation-headers.test.ts [queued]
18
+  ❯ src/server/api-client-core/__tests__/operation-headers.test.ts 0/9
19
19
   ❯ src/server/hono/hubspot-connect-routes/auth-complete.test.ts [queued]
20
20
   ❯ src/server/hono/hubspot-connect-routes/auth-init-session.test.ts [queued]
21
21
   ❯ src/server/hono/hubspot-connect-routes/auth-logout.test.ts [queued]
22
22
   ❯ src/server/hono/hubspot-connect-routes/auth-refresh.test.ts [queued]
23
23
   ❯ src/server/hono/hubspot-connect-routes/cimd-public-routes.test.ts [queued]
24
24
   ❯ src/server/hono/utils/cors-middleware.test.ts 0/4
25
-  ❯ src/server/utils/dpop-utils.test.ts 0/7
26
-  ❯ src/server/utils/jwt-utils.test.ts 1/6
25
+  ❯ src/server/utils/dpop-utils.test.ts [queued]
26
+  ❯ src/server/utils/hubspot-dpop-auth-headers.test.ts [queued]
27
27
 
28
28
   Test Files 0 passed (29)
29
-  Tests 1 passed (17)
30
-  Start at 15:45:31
31
-  Duration 199ms
32
- [?2026l[?2026h ✓ src/server/utils/jwt-utils.test.ts (6 tests) 9ms
33
- ✓ src/server/hono/utils/cors-middleware.test.ts (4 tests) 14ms
34
- ✓ src/server/utils/dpop-utils.test.ts (7 tests) 11ms
35
- ✓ src/browser/app-connect-controller/oauth-complete.test.ts (2 tests) 12ms
36
- ✓ src/server/api-client-core/__tests__/operation-headers.test.ts (9 tests) 15ms
37
- ✓ src/server/hono/hubspot-connect-routes/cimd-public-routes.test.ts (4 tests) 23ms
29
+  Tests 0 passed (13)
30
+  Start at 09:09:10
31
+  Duration 301ms
32
+ [?2026l[?2026h ✓ src/server/api-client-core/__tests__/operation-headers.test.ts (9 tests) 17ms
33
+ ✓ src/server/hono/utils/cors-middleware.test.ts (4 tests) 21ms
34
+ ✓ src/browser/app-connect-controller/oauth-complete.test.ts (2 tests) 16ms
38
35
  ✓ src/browser/app-connect-controller/init.test.ts (7 tests) 18ms
39
- ✓ src/browser/app-connect-controller/oauth-popup.test.ts (5 tests) 19ms
40
- ✓ src/server/hono/hubspot-connect-routes/auth-logout.test.ts (2 tests) 18ms
41
- ✓ src/server/hono/hubspot-connect-routes/auth-complete.test.ts (9 tests) 22ms
36
+ ✓ src/browser/app-connect-controller/oauth-popup.test.ts (5 tests) 18ms
37
+ ✓ src/server/hono/hubspot-connect-routes/cimd-public-routes.test.ts (4 tests) 21ms
38
+ ✓ src/server/utils/dpop-utils.test.ts (7 tests) 32ms
39
+ ✓ src/server/utils/hubspot-dpop-auth-headers.test.ts (2 tests) 16ms
42
40
  stdout | src/server/hono/hubspot-connect-routes/auth-init-session.test.ts > handleAuthInitSession > builds the OAuth redirect_uri from the request Origin and the frontend callback path
43
41
  clientId test-client-id
44
42
 
43
+ ✓ src/server/hono/hubspot-connect-routes/auth-logout.test.ts (2 tests) 17ms
45
44
  stdout | src/server/hono/hubspot-connect-routes/auth-init-session.test.ts > handleAuthInitSession > pins the request Origin in `__Host-hs_app_origin` with SameSite=None; Partitioned
46
45
  clientId test-client-id
47
46
 
47
+ ✓ src/server/hono/hubspot-connect-routes/auth-refresh.test.ts (6 tests) 30ms
48
48
  stdout | src/server/hono/hubspot-connect-routes/auth-init-session.test.ts > handleAuthInitSession > sets all session cookies with SameSite=None; Partitioned
49
49
  clientId test-client-id
50
50
 
@@ -54,64 +54,67 @@
54
54
  stdout | src/server/hono/hubspot-connect-routes/auth-init-session.test.ts > handleAuthInitSession > defaults return_path to / when param is absent
55
55
  clientId test-client-id
56
56
 
57
- ✓ src/server/hono/hubspot-connect-routes/auth-init-session.test.ts (8 tests) 27ms
58
- ✓ src/server/hono/hubspot-connect-routes/auth-refresh.test.ts (6 tests) 30ms
59
- ✓ src/browser/app-connect-controller/connect-start.test.ts (2 tests) 16ms
57
+ ✓ src/server/hono/hubspot-connect-routes/auth-init-session.test.ts (8 tests) 34ms
58
+ ✓ src/browser/app-connect-controller/connect-start.test.ts (2 tests) 20ms
60
59
 
61
60
   ❯ src/browser/app-connect-controller/connect-start.test.ts 2/2
62
61
   ❯ src/browser/app-connect-controller/init.test.ts 7/7
63
62
   ❯ src/browser/app-connect-controller/oauth-complete.test.ts 2/2
64
63
   ❯ src/browser/app-connect-controller/oauth-popup.test.ts 5/5
65
-  ❯ src/server/api-client-core/__tests__/operation-headers.test.ts 9/9
66
-  ❯ src/server/hono/hubspot-connect-routes/auth-complete.test.ts 9/9
64
+  ❯ src/server/hono/hubspot-connect-routes/auth-complete.test.ts [queued]
67
65
   ❯ src/server/hono/hubspot-connect-routes/auth-init-session.test.ts 8/8
68
66
   ❯ src/server/hono/hubspot-connect-routes/auth-logout.test.ts 2/2
69
67
   ❯ src/server/hono/hubspot-connect-routes/auth-refresh.test.ts 6/6
70
68
   ❯ src/server/hono/hubspot-connect-routes/cimd-public-routes.test.ts 4/4
71
69
   ❯ src/server/hono/utils/cors-middleware.test.ts 4/4
72
-  ❯ src/server/sanitize-request.test.ts [queued]
73
70
   ❯ src/server/utils/dpop-utils.test.ts 7/7
74
-
75
-  Test Files 13 passed (29)
76
-  Tests 71 passed (71)
77
-  Start at 15:45:31
78
-  Duration 421ms
79
- [?2026l[?2026h ✓ src/server/sanitize-request.test.ts (6 tests) 12ms
80
- ✓ src/server/utils/jwk-utils.test.ts (3 tests) 9ms
81
- ✓ src/server/utils/hubspot-dpop-auth-headers.test.ts (2 tests) 10ms
82
- ✓ src/browser/app-connect-controller/utils/session-utils.test.ts (9 tests) 3ms
83
- ✓ src/server/api-client-core/__tests__/errors.test.ts (14 tests) 4ms
84
- ✓ src/shared/encoding/sha256.test.ts (3 tests) 4ms
85
- ✓ src/browser/app-connect-controller/utils/store-utils.test.ts (11 tests) 4ms
86
- ✓ src/server/hono/hubspot-connect-routes/fetch-hubspot-client-metadata.test.ts (5 tests) 3ms
87
- ✓ src/shared/encoding/base64.test.ts (7 tests) 5ms
71
+  ❯ src/server/utils/hubspot-dpop-auth-headers.test.ts 2/2
72
+  src/server/utils/jwt-utils.test.ts [queued]
73
+
74
+  Test Files 12 passed (29)
75
+  Tests 58 passed (58)
76
+  Start at 09:09:10
77
+  Duration 501ms
78
+ [?2026l[?2026h ✓ src/server/utils/jwt-utils.test.ts (6 tests) 12ms
79
+ ✓ src/server/utils/jwk-utils.test.ts (3 tests) 8ms
80
+ ✓ src/shared/encoding/sha256.test.ts (3 tests) 6ms
81
+ ✓ src/server/utils/env-utils.test.ts (29 tests) 4ms
82
+ ✓ src/server/sanitize-request.test.ts (6 tests) 12ms
83
+ ✓ src/browser/app-connect-controller/utils/session-utils.test.ts (11 tests) 4ms
84
+ ✓ src/browser/app-connect-controller/utils/store-utils.test.ts (11 tests) 3ms
88
85
  ✓ src/server/hono/hubspot-connect-routes/utils.test.ts (7 tests) 2ms
89
- ✓ src/server/utils/env-utils.test.ts (29 tests) 5ms
90
- ✓ src/server/utils/cookie-utils.test.ts (8 tests) 2ms
86
+ ✓ src/shared/encoding/base64.test.ts (7 tests) 2ms
87
+ ✓ src/server/api-client-core/__tests__/errors.test.ts (14 tests) 4ms
88
+ ✓ src/server/hono/hubspot-connect-routes/fetch-hubspot-client-metadata.test.ts (5 tests) 2ms
91
89
  ✓ src/server/hono/hubspot-connect-routes/load-hubspot-connect-routes-env.test.ts (10 tests) 3ms
92
90
 
93
91
 
94
-
95
-
96
-
97
-
98
-
99
-
100
-
101
92
   ❯ src/browser/app-connect-controller/view-state.test.ts [queued]
93
+  ❯ src/server/hono/hubspot-connect-routes/auth-complete.test.ts [queued]
102
94
   ❯ src/server/utils/jwk-utils.test.ts 3/3
95
+  ❯ src/shared/encoding/sha256.test.ts 3/3
103
96
 
104
-  Test Files 26 passed (29)
105
-  Tests 185 passed (185)
106
-  Start at 15:45:31
107
-  Duration 520ms
108
- [?2026l ✓ src/browser/app-connect-controller/utils/resolve-oauth-connect-mode.test.ts (4 tests) 2ms
109
- ✓ src/browser/app-connect-controller/view-state.test.ts (7 tests) 2ms
97
+  Test Files 24 passed (29)
98
+  Tests 170 passed (170)
99
+  Start at 09:09:10
100
+  Duration 601ms
101
+ [?2026l[?2026h ✓ src/browser/app-connect-controller/view-state.test.ts (7 tests) 2ms
102
+ ✓ src/server/utils/cookie-utils.test.ts (8 tests) 2ms
103
+ ✓ src/browser/app-connect-controller/utils/resolve-oauth-connect-mode.test.ts (4 tests) 2ms
110
104
  ✓ src/browser/app-connect-controller/utils/memoize-utils.test.ts (4 tests) 2ms
111
105
 
106
+
107
+  ❯ src/server/hono/hubspot-connect-routes/auth-complete.test.ts 0/11
108
+
109
+  Test Files 28 passed (29)
110
+  Tests 193 passed (204)
111
+  Start at 09:09:10
112
+  Duration 900ms
113
+ [?2026l ✓ src/server/hono/hubspot-connect-routes/auth-complete.test.ts (11 tests) 18ms
114
+
112
115
   Test Files  29 passed (29)
113
-  Tests  200 passed (200)
114
-  Start at  15:45:31
115
-  Duration  634ms (transform 945ms, setup 0ms, import 1.69s, tests 303ms, environment 1ms)
116
+  Tests  204 passed (204)
117
+  Start at  09:09:10
118
+  Duration  1.01s (transform 1.62s, setup 0ms, import 2.50s, tests 350ms, environment 1ms)
116
119
 
117
120
  [?25h
@@ -2,21 +2,21 @@
2
2
  $ tsdown
3
3
  ℹ tsdown v0.22.0 powered by rolldown v1.0.1
4
4
  ℹ config file: /Users/psteeleidem/src/HubSpotEngineering/app-connect-sdk/packages/app-connect-sdk/tsdown.config.ts
5
- ℹ entry: src/browser/index.ts, src/browser/react/index.ts, src/browser/react/lovable/index.ts
6
- ℹ target: node24.0.0
7
5
  ℹ entry: src/server/api-client-core/index.ts, src/server/oauth.ts, src/server/lovable/index.ts
8
6
  ℹ target: node24.0.0
9
- ℹ tsconfig: tsconfig.browser.json
7
+ ℹ entry: src/browser/index.ts, src/browser/react/index.ts, src/browser/react/lovable/index.ts
8
+ ℹ target: node24.0.0
10
9
  ℹ tsconfig: tsconfig.server.json
10
+ ℹ tsconfig: tsconfig.browser.json
11
11
  ℹ Build start
12
- ℹ Cleaning 546 files
12
+ ℹ Cleaning 548 files
13
13
  ℹ dist/browser/react/lovable.js  1.19 kB │ gzip: 0.56 kB
14
14
  ℹ dist/browser/index.js  0.24 kB │ gzip: 0.16 kB
15
15
  ℹ dist/browser/react.js  0.15 kB │ gzip: 0.10 kB
16
- ℹ dist/browser/create-BNQazCF-.js.map 44.69 kB │ gzip: 12.65 kB
17
- ℹ dist/browser/HubSpotAppConnect-DFe9b90e.js.map 35.91 kB │ gzip: 8.20 kB
18
- ℹ dist/browser/create-BNQazCF-.js 23.03 kB │ gzip: 7.10 kB
19
- ℹ dist/browser/HubSpotAppConnect-DFe9b90e.js 17.05 kB │ gzip: 3.98 kB
16
+ ℹ dist/browser/create-DxEyGG-k.js.map 46.88 kB │ gzip: 13.13 kB
17
+ ℹ dist/browser/HubSpotAppConnect-721kYr9d.js.map 35.92 kB │ gzip: 8.21 kB
18
+ ℹ dist/browser/create-DxEyGG-k.js 24.26 kB │ gzip: 7.39 kB
19
+ ℹ dist/browser/HubSpotAppConnect-721kYr9d.js 17.11 kB │ gzip: 4.00 kB
20
20
  ℹ dist/browser/theme.css-CJbxi5hC.js 14.28 kB │ gzip: 2.37 kB
21
21
  ℹ dist/browser/assets/src/browser/theme-tokens.generated.css.ts.vanilla-C8Rjb8NH.css 10.50 kB │ gzip: 2.06 kB
22
22
  ℹ dist/browser/assets/src/browser/react/components/AppConnectHeader/AppConnectHeader.css.ts.vanilla-DpJ0aBGF.css  5.73 kB │ gzip: 1.25 kB
@@ -29,12 +29,12 @@
29
29
  ℹ dist/browser/assets/src/browser/react/components/DisconnectedBody/DisconnectedBody.css.ts.vanilla-DLvostZL.css  0.63 kB │ gzip: 0.28 kB
30
30
  ℹ dist/browser/assets/src/browser/react/components/HubSpotAppConnect/HubSpotAppConnect.css.ts.vanilla-Boi40eip.css  0.61 kB │ gzip: 0.28 kB
31
31
  ℹ dist/browser/assets/src/browser/theme.css.ts.vanilla-D_GBwEeI.css  0.33 kB │ gzip: 0.24 kB
32
- ℹ dist/browser/index.d.ts 13.20 kB │ gzip: 1.68 kB
32
+ ℹ dist/browser/index.d.ts 13.20 kB │ gzip: 1.67 kB
33
33
  ℹ dist/browser/react/lovable.d.ts  1.91 kB │ gzip: 0.88 kB
34
34
  ℹ dist/browser/react.d.ts  1.75 kB │ gzip: 0.75 kB
35
- ℹ dist/browser/types-DkAmHcZt.d.ts  3.63 kB │ gzip: 1.51 kB
36
- ℹ 23 files, total: 183.26 kB
37
- ✔ Build complete in 1529ms
35
+ ℹ dist/browser/types-C3wed8dU.d.ts  4.64 kB │ gzip: 1.85 kB
36
+ ℹ 23 files, total: 187.76 kB
37
+ ✔ Build complete in 1372ms
38
38
  ℹ dist/server/api-client.js  18.71 kB │ gzip: 2.66 kB
39
39
  ℹ dist/server/oauth.js  0.32 kB │ gzip: 0.17 kB
40
40
  ℹ dist/server/lovable.js  0.29 kB │ gzip: 0.16 kB
@@ -44,7 +44,7 @@
44
44
  ℹ dist/server/api-client-core/apis/cms/posts.generated.js.map  12.35 kB │ gzip: 1.77 kB
45
45
  ℹ dist/server/api-client-core/apis/cms/hubdb.generated.js.map  12.12 kB │ gzip: 1.73 kB
46
46
  ℹ dist/server/api-client-core/apis/cms/media-bridge.generated.js.map  11.56 kB │ gzip: 1.82 kB
47
- ℹ dist/server/hono/hubspot-connect-routes/auth-complete.js.map  10.70 kB │ gzip: 3.53 kB
47
+ ℹ dist/server/hono/hubspot-connect-routes/auth-complete.js.map  10.99 kB │ gzip: 3.61 kB
48
48
  ℹ dist/server/api-client-core/apis/webhooks.generated.js.map  10.06 kB │ gzip: 1.59 kB
49
49
  ℹ dist/server/api-client-core/apis/cms/tags.generated.js.map  9.39 kB │ gzip: 1.34 kB
50
50
  ℹ dist/server/api-client-core/apis/cms/authors.generated.js.map  9.36 kB │ gzip: 1.33 kB
@@ -64,10 +64,10 @@
64
64
  ℹ dist/server/hono/hubspot-connect-routes/auth-init-session.js.map  7.15 kB │ gzip: 2.20 kB
65
65
  ℹ dist/server/api-client-core/apis/cms/posts.generated.js  7.00 kB │ gzip: 0.95 kB
66
66
  ℹ dist/server/api-client-core/apis/crm/custom-objects.generated.js.map  6.82 kB │ gzip: 1.20 kB
67
+ ℹ dist/server/hono/hubspot-connect-routes/auth-complete.js  6.77 kB │ gzip: 2.40 kB
67
68
  ℹ dist/server/hono/hubspot-connect-routes/oauth-client.js.map  6.75 kB │ gzip: 2.45 kB
68
69
  ℹ dist/server/hono/hubspot-connect-routes/auth-logout.js.map  6.72 kB │ gzip: 2.13 kB
69
70
  ℹ dist/server/api-client-core/apis/cms/media-bridge.generated.js  6.68 kB │ gzip: 0.97 kB
70
- ℹ dist/server/hono/hubspot-connect-routes/auth-complete.js  6.65 kB │ gzip: 2.37 kB
71
71
  ℹ dist/server/utils/dpop-utils.js.map  6.58 kB │ gzip: 2.54 kB
72
72
  ℹ dist/server/utils/jwt-utils.js.map  6.17 kB │ gzip: 2.28 kB
73
73
  ℹ dist/server/api-client-core/apis/crm/pipelines.generated.js.map  6.08 kB │ gzip: 1.00 kB
@@ -140,6 +140,7 @@
140
140
  ℹ dist/server/constants.js.map  3.55 kB │ gzip: 1.65 kB
141
141
  ℹ dist/server/api-client-core/apis/cms/blog-settings.generated.js.map  3.43 kB │ gzip: 1.01 kB
142
142
  ℹ dist/server/api-client-core/apis/crm/pipelines.generated.js  3.42 kB │ gzip: 0.52 kB
143
+ ℹ dist/server/hono/hubspot-connect-routes/whoami.js.map  3.42 kB │ gzip: 1.38 kB
143
144
  ℹ dist/server/hono/hubspot-connect-routes/cimd-public-routes.js.map  3.40 kB │ gzip: 1.31 kB
144
145
  ℹ dist/server/hono/utils/cookie-utils.js.map  3.39 kB │ gzip: 1.50 kB
145
146
  ℹ dist/server/hono/utils/cors-middleware.js  3.27 kB │ gzip: 1.46 kB
@@ -212,6 +213,7 @@
212
213
  ℹ dist/server/api-client-core/apis/crm/property-validations.generated.js.map  2.13 kB │ gzip: 0.67 kB
213
214
  ℹ dist/server/api-client-core/apis/cms/url-redirects.generated.js.map  2.06 kB │ gzip: 0.70 kB
214
215
  ℹ dist/server/lovable/hubspot-connect/run-hubspot-connect-lovable-server.js.map  2.03 kB │ gzip: 0.91 kB
216
+ ℹ dist/server/hono/hubspot-connect-routes/whoami.js  2.02 kB │ gzip: 0.82 kB
215
217
  ℹ dist/server/api-client-core/apis/cms/site-search.generated.js.map  1.97 kB │ gzip: 0.77 kB
216
218
  ℹ dist/server/api-client-core/apis/settings/user-provisioning.generated.js.map  1.97 kB │ gzip: 0.66 kB
217
219
  ℹ dist/server/utils/hubspot-dpop-auth-headers.js.map  1.91 kB │ gzip: 0.89 kB
@@ -520,5 +522,5 @@
520
522
  ℹ dist/server/api-client-core/apis/crm/imports.generated.d.ts  0.27 kB │ gzip: 0.19 kB
521
523
  ℹ dist/server/api-client-core/apis/auth/oauth.generated.d.ts  0.26 kB │ gzip: 0.19 kB
522
524
  ℹ dist/server/api-client-core/apis/crm/lists.generated.d.ts  0.26 kB │ gzip: 0.19 kB
523
- ℹ 485 files, total: 3.30 MB
524
- ✔ Build complete in 1838ms
525
+ ℹ 487 files, total: 3.31 MB
526
+ ✔ Build complete in 2068ms