All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Demote log level from error to warn
- Patched the history API methods, such as pushState and replaceState, to trigger a custom userflow:pushstate and userflow:replacestate events whenever the state changes, improving our handling of these changes.
- Added
userflow.setLinkUrlDecorator()
method to override how Userflow.js displays links to e.g. your knowledge base. See Userflow.js docs
- Added
unreadAnnouncementCount
field toResourceCenterState
object, which represents the number of unread announcements.
- Added
userflow.disableEvalJs()
to block all "Evaluate Javascript" actions from running.
- Added
userflow.setServerEndpoint()
to override which server Userflow.js should connect to. For advanced use with self-hosted proxy.
- Detect Chrome iOS (starting a little arbitrarily at v100) as es2020 compatible (instead of serving it the legacy bundle).
- Added
userflow.setBaseZIndex()
to override Userflow's default base z-index of1234500
.
- Added
userflow.load()
, which returns aPromise
that resolves once the full Userflow.js has been loaded from our CDN, or rejects if it fails.
- Added types for new list data type and append/prepend/remove list operations
- Added
userflow.setPageTrackingDisabled()
to turn off auto tracking of page_viewed events
- Added stubs of new resource center related methods:
userflow.openResourceCenter()
,userflow.closeResourceCenter()
,userflow.toggleResourceCenter()
,userflow.setResourceCenterLauncherHidden()
,userflow.getResourceCenterState()
. See Userflow.js docs
- Added typings for
signature
option inuserflow.identify()
anduserflow.group()
(for use with upcoming identity verification).
- Added missing stub of
userflow.start
method.
- Support importing
userflow.js
with server-side rendering such as with Next.js.
- Added some missing stubbed missing implementations so they can be used before proper Userflow.js is loaded from CDN.
module
build in ESM format.- It will now detect whether the user's browser supports ES2020 features and load either a modern Userflow.js version (small and fast in modern browsers) or a legacy Userflow.js version (larger but supports older browsers).
- Now only using ES5 syntax (enforced via ESLint rules) to possibly support IE11 without transpilation one day.
- BREAKING CHANGE: The scripts are now loaded from
js.userflow.com
instead ofjs.getuserflow.com
, which means your app's Content Security header may need an update. Please consult our CSP guide.
loadUserflow()
was removed. Calling any of theuserflow.*()
methods will automatically load Userflow.js from CDN.- Deprecated
userflow.startFlow()
was removed. Useuserflow.start()
instead. - Deprecated
userflow.endAllFlows()
was removed. Useuserflow.endAll()
instead. - Deprecated
IdentifyParams
type was removed. UseAttributes
instead. - Deprecated
immediate: boolean
option was removed - no longer relevant.